summaryrefslogtreecommitdiff
path: root/src/drivers
diff options
context:
space:
mode:
authorManoloFLTK <41016272+ManoloFLTK@users.noreply.github.com>2023-04-03 08:21:07 +0200
committerManoloFLTK <41016272+ManoloFLTK@users.noreply.github.com>2023-04-03 08:21:07 +0200
commit7e08bd7e2622c9ec57e1ab240ba49be231f83e97 (patch)
tree85224a09b133ad87290bb4290f27d89b5d645e55 /src/drivers
parente239d00cadcef12b841b6f284ba18c93d247d7fe (diff)
Wayland + Weston: fix focus loss after click on titlebar
Diffstat (limited to 'src/drivers')
-rw-r--r--src/drivers/Wayland/Fl_Wayland_Screen_Driver.cxx1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/drivers/Wayland/Fl_Wayland_Screen_Driver.cxx b/src/drivers/Wayland/Fl_Wayland_Screen_Driver.cxx
index 7ffa1cd36..0ecf5b407 100644
--- a/src/drivers/Wayland/Fl_Wayland_Screen_Driver.cxx
+++ b/src/drivers/Wayland/Fl_Wayland_Screen_Driver.cxx
@@ -780,6 +780,7 @@ static void wl_keyboard_leave(void *data, struct wl_keyboard *wl_keyboard,
//fprintf(stderr, "keyboard leave fl_win=%p\n", Fl_Wayland_Screen_Driver::surface_to_window(surface));
seat->keyboard_surface = NULL;
Fl_Window *win = Fl_Wayland_Screen_Driver::surface_to_window(surface);
+ if (!win && Fl::focus()) win = Fl::focus()->top_window();
if (win) Fl::handle(FL_UNFOCUS, win);
key_vector.size(0);
}