diff options
Diffstat (limited to 'openbox/screen.h')
| -rw-r--r-- | openbox/screen.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/openbox/screen.h b/openbox/screen.h index a6a3995b..673a994d 100644 --- a/openbox/screen.h +++ b/openbox/screen.h @@ -26,6 +26,12 @@ struct _ObClient; #define DESKTOP_ALL (0xffffffff) +typedef enum { + SCREEN_SHOW_DESKTOP_NO, + SCREEN_SHOW_DESKTOP_UNTIL_WINDOW, + SCREEN_SHOW_DESKTOP_UNTIL_TOGGLE +} ObScreenShowDestopMode; + /*! The number of available desktops */ extern guint screen_num_desktops; /*! The number of virtual "xinerama" screens/heads */ @@ -35,7 +41,7 @@ extern guint screen_desktop; /*! The desktop which was last visible */ extern guint screen_last_desktop; /*! Are we in showing-desktop mode? */ -extern gboolean screen_showing_desktop; +extern ObScreenShowDestopMode screen_show_desktop_mode; /*! The support window also used for focus and stacking */ extern Window screen_support_win; /*! The last time at which the user changed desktops */ @@ -90,7 +96,11 @@ void screen_hide_desktop_popup(void); show is FALSE (restoring from show-desktop mode), and the rest are iconified. */ -void screen_show_desktop(gboolean show, struct _ObClient *show_only); +void screen_show_desktop(ObScreenShowDestopMode show_mode, + struct _ObClient *show_only); + +/*! Returns true if showing desktop mode is enabled. */ +gboolean screen_showing_desktop(); /*! Updates the desktop layout from the root property if available */ void screen_update_layout(void); |
