summaryrefslogtreecommitdiff
path: root/openbox
diff options
context:
space:
mode:
Diffstat (limited to 'openbox')
-rw-r--r--openbox/focus_cycle_popup.c1
-rw-r--r--openbox/screen.c6
-rw-r--r--openbox/screen.h2
3 files changed, 9 insertions, 0 deletions
diff --git a/openbox/focus_cycle_popup.c b/openbox/focus_cycle_popup.c
index e0a8080f..1869cc35 100644
--- a/openbox/focus_cycle_popup.c
+++ b/openbox/focus_cycle_popup.c
@@ -456,6 +456,7 @@ void focus_cycle_popup_show(ObClient *c, gboolean iconic_windows,
XMapWindow(ob_display, popup.bg);
XFlush(ob_display);
popup.mapped = TRUE;
+ screen_hide_desktop_popup();
}
}
diff --git a/openbox/screen.c b/openbox/screen.c
index 9899cfd8..7516cfd9 100644
--- a/openbox/screen.c
+++ b/openbox/screen.c
@@ -858,6 +858,12 @@ void screen_show_desktop_popup(guint d)
g_free(a);
}
+void screen_hide_desktop_popup()
+{
+ ob_main_loop_timeout_remove(ob_main_loop, hide_desktop_popup_func);
+ pager_popup_hide(desktop_popup);
+}
+
guint screen_find_desktop(guint from, ObDirection dir,
gboolean wrap, gboolean linear)
{
diff --git a/openbox/screen.h b/openbox/screen.h
index 68a13251..39871e33 100644
--- a/openbox/screen.h
+++ b/openbox/screen.h
@@ -77,6 +77,8 @@ guint screen_find_desktop(guint from, ObDirection dir,
/*! Show the desktop popup/notification */
void screen_show_desktop_popup(guint d);
+/*! Hide it */
+void screen_hide_desktop_popup();
/*! Shows and focuses the desktop and hides all the client windows, or
returns to the normal state, showing client windows.