]> git.mdlowis.com Git - proto/labwc.git/commitdiff
src/osd.c: Prevent showing invalid windows
authorConsolatis <35009135+Consolatis@users.noreply.github.com>
Mon, 26 Sep 2022 01:48:02 +0000 (03:48 +0200)
committerJohan Malm <johanmalm@users.noreply.github.com>
Tue, 27 Sep 2022 16:35:10 +0000 (17:35 +0100)
This might happen when closing the last
application "to tray" like VLC, Discord or Steam.

Reported-by: @Flrian
src/desktop.c
src/osd.c

index d261e7f7683a3fe1189fa859f9b41b792a06f288..f5384f8d09e1ceda401ed8ead056e456897acafc 100644 (file)
@@ -179,7 +179,10 @@ first_view(struct server *server)
        struct wl_list *list_head =
                &server->workspace_current->tree->children;
        wl_list_for_each_reverse(node, list_head, link) {
-               return node_view_from_node(node);
+               struct view *view = node_view_from_node(node);
+               if (isfocusable(view)) {
+                       return view;
+               }
        }
        return NULL;
 }
index 26b946cbc85d0ca5fa7975e109d7b7b4ceae1e9b..f24bbcfdbe94ded2d8e9658ad4ab7423c8a07742 100644 (file)
--- a/src/osd.c
+++ b/src/osd.c
@@ -226,7 +226,7 @@ osd_update(struct server *server)
        struct wl_list *node_list =
                &server->workspace_current->tree->children;
 
-       if (wl_list_empty(node_list)) {
+       if (wl_list_empty(node_list) || !server->osd_state.cycle_view) {
                osd_finish(server);
                return;
        }