X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fscreen.h;h=696423e2becc04dbc84f63617fbc2e56997b2157;hb=c90da6da781932c2d178bfb7e39ec1d5003543b7;hp=b68f6ea5345638182123d56714e8997d1bd6570e;hpb=276b2be581c6cb138b439537761ff2ca42201805;p=chaz%2Fopenbox diff --git a/openbox/screen.h b/openbox/screen.h index b68f6ea5..696423e2 100644 --- a/openbox/screen.h +++ b/openbox/screen.h @@ -3,9 +3,8 @@ #include "misc.h" #include "geom.h" -#include "client.h" -struct Client; +struct _ObClient; #define DESKTOP_ALL (0xffffffff) @@ -17,6 +16,8 @@ extern guint screen_num_monitors; extern guint screen_desktop; /*! Are we in showing-desktop mode? */ extern gboolean screen_showing_desktop; +/*! The support window also used for focus and stacking */ +extern Window screen_support_win; typedef struct DesktopLayout { ObOrientation orientation; @@ -44,6 +45,9 @@ void screen_resize(); void screen_set_num_desktops(guint num); /*! Change the current desktop */ void screen_set_desktop(guint num); +/*! Interactively change desktops */ +guint screen_cycle_desktop(ObDirection dir, gboolean wrap, gboolean linear, + gboolean done, gboolean cancel); /*! Shows and focuses the desktop and hides all the client windows, or returns to the normal state, showing client windows. */ @@ -57,7 +61,7 @@ void screen_update_desktop_names(); /*! Installs or uninstalls a colormap for a client. If client is NULL, then it handles the root colormap. */ -void screen_install_colormap(struct Client *client, gboolean install); +void screen_install_colormap(struct _ObClient *client, gboolean install); void screen_update_areas(); @@ -69,4 +73,6 @@ Rect *screen_area(guint desktop); Rect *screen_area_monitor(guint desktop, guint head); +gboolean screen_pointer_pos(int *x, int *y); + #endif