]> Dogcows Code - chaz/openbox/blobdiff - openbox/client.h
add raise action
[chaz/openbox] / openbox / client.h
index 812d0ac5e7bf701cca57298b7f941ce072688a33..bb783458cee5ea2eaf9a32ad24ba3933d0040ad0 100644 (file)
@@ -379,16 +379,21 @@ 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, TRUE, TRUE,\
+                   FALSE)
 #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, TRUE, TRUE, FALSE)
 #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, TRUE, TRUE, FALSE)
+#define client_reconfigure(self, force) \
+  client_configure(self, ((ObClient*)self)->area.x, ((ObClient*)self)->area.y, \
+                   ((ObClient*)self)->area.width, \
+                   ((ObClient*)self)->area.height, FALSE, TRUE, force)
 
 /*! Figure out where a window will end up and what size it will be if you
   told it to move/resize to these coordinates.
 
-  These values are what client_configure_full will give the window.
+  These values are what client_configure will give the window.
 
   @param x The x coordiante of the new position for the client.
   @param y The y coordiante of the new position for the client.
@@ -422,12 +427,10 @@ void client_try_configure(ObClient *self, gint *x, gint *y, gint *w, gint *h,
                interactive move/resize, and then be TRUE for the last call
                only.
   @param force_reply Send a ConfigureNotify to the client regardless of if
-                     the position changed.
+                     the position/size changed.
 */
 void client_configure(ObClient *self, gint x, gint y, gint w, gint h,
-                      gboolean user, gboolean final);
-
-void client_reconfigure(ObClient *self, gboolean force);
+                      gboolean user, gboolean final, gboolean force_reply);
 
 /*! Finds coordinates to keep a client on the screen.
   @param self The client
@@ -547,10 +550,13 @@ gboolean client_focus(ObClient *self);
   when the user deliberately selects a window for use.
   @param here If true, then the client is brought to the current desktop;
               otherwise, the desktop is changed to where the client lives.
+  @param raise If true, the client is brought to the front.
+  @param unshade If true, the client is unshaded (if it is shaded)
   @param user If true, then a user action is what requested the activation;
               otherwise, it means an application requested it on its own
 */
-void client_activate(ObClient *self, gboolean here, gboolean user);
+void client_activate(ObClient *self, gboolean here, gboolean raise,
+                     gboolean unshade, gboolean user);
 
 /*! Bring all of its helper windows to its desktop. These are the utility and
   stuff windows. */
@@ -608,6 +614,8 @@ void client_get_type_and_transientness(ObClient *self);
 
 const ObClientIcon *client_icon(ObClient *self, gint w, gint h);
 
+ObClientIcon *client_thumbnail(ObClient *self, gint w, gint h);
+
 /*! Return TRUE if the client is transient for some other window. Return
   FALSE if it's not transient or there is no window for it to be
   transient for */
@@ -692,4 +700,6 @@ ObClient* client_under_pointer();
 
 gboolean client_has_group_siblings(ObClient *self);
 
+void clienticon_free(ObClientIcon *ci);
+
 #endif
This page took 0.025474 seconds and 4 git commands to generate.