X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fclient.h;h=3d81b270cc2130f3c6279a02934cf9a1ca8a6e7a;hb=16fcb1213d4ccfccd4e4a8ad5e8b0c826dc5c16e;hp=82a565f3fd692f7e64200f8789a5be66081b2ff6;hpb=2fb7a6e4782013f7fca8a2b591aecbd54c262f07;p=chaz%2Fopenbox diff --git a/openbox/client.h b/openbox/client.h index 82a565f3..3d81b270 100644 --- a/openbox/client.h +++ b/openbox/client.h @@ -216,6 +216,10 @@ struct _ObClient we only force it if it tries to go completely offscreen, if neither, we should place the window ourselves when it first appears */ guint positioned; + + /*! Was the window's size requested by the application or the user? + If by the application we don't let it go outside the available area */ + guint sized; /*! Can the window receive input focus? */ gboolean can_focus; @@ -382,11 +386,13 @@ void client_convert_gravity_resize(ObClient *self, gint gravity, gint w, gint h); #define client_move(self, x, y) \ - client_configure(self, x, y, self->area.width, self->area.height, TRUE, TRUE) + client_configure(self, x, y, self->area.width, self->area.height, \ + self->border_width, TRUE, TRUE) #define client_resize(self, w, h) \ - client_configure(self, self->area.x, self->area.y, w, h, TRUE, TRUE) + client_configure(self, self->area.x, self->area.y, w, h, \ + self->border_width, TRUE, TRUE) #define client_move_resize(self, x, y, w, h) \ - client_configure(self, x, y, w, h, TRUE, TRUE) + client_configure(self, x, y, w, h, self->border_width, TRUE, TRUE) /*! Figure out where a window will end up and what size it will be if you told it to move/resize to these coordinates. @@ -427,7 +433,7 @@ void client_try_configure(ObClient *self, gint *x, gint *y, gint *w, gint *h, @param force_reply Send a ConfigureNotify to the client regardless of if the position changed. */ -void client_configure(ObClient *self, gint x, gint y, gint w, gint h, +void client_configure(ObClient *self, gint x, gint y, gint w, gint h, gint b, gboolean user, gboolean final); void client_reconfigure(ObClient *self); @@ -556,6 +562,9 @@ void client_activate(ObClient *self, gboolean here, gboolean user); stuff windows. */ void client_bring_helper_windows(ObClient *self); +/*! Bring all of its modal windows to its desktop. */ +void client_bring_modal_windows(ObClient *self); + /*! Calculates the stacking layer for the client window */ void client_calc_layer(ObClient *self);