X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fscreen.h;h=d6435fef12e93c630f8162e7ea517d529afb1a67;hb=17b927ab6dcaa00ab5a68647cab4a514235e5892;hp=a84170f84e45145d2e4bf9d8a1b43c171ab693f2;hpb=4546925b589d30c46f3bced74a02b3d531de894c;p=chaz%2Fopenbox diff --git a/openbox/screen.h b/openbox/screen.h index a84170f8..d6435fef 100644 --- a/openbox/screen.h +++ b/openbox/screen.h @@ -41,19 +41,19 @@ extern Window screen_support_win; /*! The last time at which the user changed desktops */ extern Time screen_desktop_user_time; -typedef struct DesktopLayout { +typedef struct ObDesktopLayout { ObOrientation orientation; ObCorner start_corner; guint rows; guint columns; -} DesktopLayout; -extern DesktopLayout screen_desktop_layout; +} ObDesktopLayout; +extern ObDesktopLayout screen_desktop_layout; /*! An array of gchar*'s which are desktop names in UTF-8 format */ extern gchar **screen_desktop_names; /*! Take over the screen, set the basic hints on it claming it as ours */ -gboolean screen_annex(const gchar *program_name); +gboolean screen_annex(); /*! Once the screen is ours, set up its initial state */ void screen_startup(gboolean reconfig); @@ -75,8 +75,12 @@ guint screen_cycle_desktop(ObDirection dir, gboolean wrap, gboolean linear, void screen_desktop_popup(guint d, gboolean show); /*! Shows and focuses the desktop and hides all the client windows, or - returns to the normal state, showing client windows. */ -void screen_show_desktop(gboolean show, gboolean restore_focus); + returns to the normal state, showing client windows. + @param If show_only is non-NULL, then only that client is shown (assuming + show is FALSE (restoring from show-desktop mode), and the rest are + iconified. +*/ +void screen_show_desktop(gboolean show, struct _ObClient *show_only); /*! Updates the desktop layout from the root property if available */ void screen_update_layout(); @@ -94,13 +98,16 @@ Rect *screen_physical_area(); Rect *screen_physical_area_monitor(guint head); -Rect *screen_area(guint desktop); +Rect *screen_physical_area_monitor_active(); + +Rect *screen_area(guint desktop, Rect *search); -Rect *screen_area_monitor(guint desktop, guint head); +Rect *screen_area_monitor(guint desktop, guint head, Rect *search); /*! Determines which physical monitor a rectangle is on by calculating the area of the part of the rectable on each monitor. The number of the - monitor containing the greatest area of the rectangle is returned.*/ + monitor containing the greatest area of the rectangle is returned. +*/ guint screen_find_monitor(Rect *search); /*! Sets the root cursor. This function decides which cursor to use, but you