Index: uspace/app/gfxdemo/gfxdemo.c
===================================================================
--- uspace/app/gfxdemo/gfxdemo.c	(revision a4e4e29582605f2e737857233774bc39670b3e19)
+++ uspace/app/gfxdemo/gfxdemo.c	(revision b769ca098d928f48269bb338ea242585b13783e8)
@@ -1,4 +1,4 @@
 /*
- * Copyright (c) 2025 Jiri Svoboda
+ * Copyright (c) 2026 Jiri Svoboda
  * All rights reserved.
  *
@@ -61,8 +61,10 @@
 };
 
+static void uiwnd_resize_event(ui_window_t *, void *);
 static void uiwnd_close_event(ui_window_t *, void *);
 static void uiwnd_kbd_event(ui_window_t *, void *, kbd_event_t *);
 
 static ui_window_cb_t ui_window_cb = {
+	.resize = uiwnd_resize_event,
 	.close = uiwnd_close_event,
 	.kbd = uiwnd_kbd_event
@@ -1169,6 +1171,8 @@
 
 	/* Do not decorate the window in fullscreen mode */
-	if (ui_is_fullscreen(ui))
+	if (ui_is_fullscreen(ui)) {
 		params.style &= ~ui_wds_decorated;
+		params.placement = ui_wnd_place_full_screen;
+	}
 
 	/*
@@ -1328,4 +1332,15 @@
 	(void)arg;
 	demo_kbd_event(event);
+}
+
+static void uiwnd_resize_event(ui_window_t *window, void *arg)
+{
+	gfx_rect_t rect;
+	gfx_coord2_t dims;
+
+	ui_window_get_app_rect(window, &rect);
+	gfx_rect_dims(&rect, &dims);
+	scr_width = dims.x;
+	scr_height = dims.y;
 }
 
