Index: uspace/lib/ui/src/window.c
===================================================================
--- uspace/lib/ui/src/window.c	(revision 29ed06d51c57af8767c7262d3816c033f5bb79ab)
+++ uspace/lib/ui/src/window.c	(revision 8eeffc12724890ee78571b31d0bac167386ceace)
@@ -1,4 +1,4 @@
 /*
- * Copyright (c) 2023 Jiri Svoboda
+ * Copyright (c) 2024 Jiri Svoboda
  * All rights reserved.
  *
@@ -318,4 +318,5 @@
 {
 	ui_window_t *window;
+	ui_window_t *pwindow = NULL;
 	display_info_t info;
 	gfx_coord2_t scr_dims;
@@ -505,5 +506,15 @@
 	*rwindow = window;
 
+	if (ui_is_fullscreen(ui))
+		pwindow = ui_window_get_active(ui);
+
 	list_append(&window->lwindows, &ui->windows);
+
+	if (ui_is_fullscreen(ui)) {
+		/* Send unfocus event to previously active window */
+		if (pwindow != NULL)
+			ui_window_send_unfocus(pwindow, 0);
+	}
+
 	return EOK;
 error:
@@ -531,4 +542,5 @@
 {
 	ui_t *ui;
+	ui_window_t *nwindow;
 
 	if (window == NULL)
@@ -558,4 +570,8 @@
 	if (ui_is_fullscreen(ui)) {
 		ui_paint(ui);
+		/* Send focus event to newly active window */
+		nwindow = ui_window_get_active(ui);
+		if (nwindow != NULL)
+			ui_window_send_focus(nwindow, 0);
 	}
 
