]> Dogcows Code - chaz/openbox/blobdiff - openbox/client.h
yay! gravity finally works right!
[chaz/openbox] / openbox / client.h
index 05153eb0008fa14dc0523a1d431c97382bf537c4..82a565f3fd692f7e64200f8789a5be66081b2ff6 100644 (file)
@@ -35,7 +35,6 @@ struct _ObSessionState;
 
 typedef struct _ObClient      ObClient;
 typedef struct _ObClientIcon  ObClientIcon;
-typedef struct _ObAppSettings ObAppSettings;
 
 /* The value in client.transient_for indicating it is a transient for its
    group instead of for a single window */
@@ -80,7 +79,6 @@ typedef enum
 struct _ObClient
 {
     ObWindow obwin;
-
     Window  window;
 
     /*! The window's decorations. NULL while the window is being managed! */
@@ -364,10 +362,24 @@ gboolean client_enter_focusable(ObClient *self);
 /* Returns if the window is focused */
 gboolean client_focused(ObClient *self);
 
-/*! Convery a position/size from a given gravity to the client's true gravity
+/*! When the client is resized but not moved, figure out the new position
+  for it based on its gravity:
+  http://standards.freedesktop.org/wm-spec/wm-spec-1.4.html#id2512541
+*/
+void client_gravity_resize_w(ObClient *self, gint *x, gint oldw, gint neww);
+
+/*! When the client is resized but not moved, figure out the new position
+  for it based on its gravity:
+  http://standards.freedesktop.org/wm-spec/wm-spec-1.4.html#id2512541
+*/
+void client_gravity_resize_h(ObClient *self, gint *y, gint oldh, gint newh);
+
+/*! Convert a position/size from a given gravity to the client's true gravity,
+  when the client is only resizing (the reference point doesn't move)
  */
-void client_convert_gravity(ObClient *self, gint gravity, gint *x, gint *y,
-                            gint w, gint h);
+void client_convert_gravity_resize(ObClient *self, gint gravity,
+                                   gint *x, gint *y,
+                                   gint w, gint h);
 
 #define client_move(self, x, y) \
   client_configure(self, x, y, self->area.width, self->area.height, TRUE, TRUE)
This page took 0.023073 seconds and 4 git commands to generate.