[Xfce4-commits] r23178 - xfwm4/trunk/src

Olivier Fourdan olivier at xfce.org
Tue Sep 19 19:40:10 UTC 2006


Author: olivier
Date: 2006-09-19 19:40:08 +0000 (Tue, 19 Sep 2006)
New Revision: 23178

Modified:
   xfwm4/trunk/src/client.c
   xfwm4/trunk/src/client.h
Log:
Fix regression introduced with rev. 22806 (shaded windows should be moved on screen to stay visible).

Modified: xfwm4/trunk/src/client.c
===================================================================
--- xfwm4/trunk/src/client.c	2006-09-18 21:41:19 UTC (rev 23177)
+++ xfwm4/trunk/src/client.c	2006-09-19 19:40:08 UTC (rev 23178)
@@ -635,7 +635,7 @@
 }
 
 void
-clientConfigure (Client * c, XWindowChanges * wc, int mask, unsigned short flags)
+clientConfigure (Client * c, XWindowChanges * wc, unsigned long mask, unsigned short flags)
 {
     XConfigureEvent ce;
     int px, py, pwidth, pheight;
@@ -2416,6 +2416,7 @@
     XWindowChanges wc;
     ScreenInfo *screen_info;
     DisplayInfo *display_info;
+    unsigned long mask;
 
     g_return_if_fail (c != NULL);
     TRACE ("entering clientToggleShaded");
@@ -2441,7 +2442,14 @@
     clientSetNetState (c);
     if (FLAG_TEST (c->xfwm_flags, XFWM_FLAG_MANAGED))
     {
-        clientConstrainPos (c, FALSE);
+        mask = (CWWidth | CWHeight);
+        if (clientConstrainPos (c, FALSE))
+        {
+            wc.x = c->x;
+            wc.y = c->y;
+            mask |= (CWX | CWY);
+        }
+        
         if (FLAG_TEST (c->xfwm_flags, XFWM_FLAG_VISIBLE))
         {
             c->ignore_unmap++;
@@ -2459,7 +2467,7 @@
 
         wc.width = c->width;
         wc.height = c->height;
-        clientConfigure (c, &wc, CWWidth | CWHeight, CFG_FORCE_REDRAW);
+        clientConfigure (c, &wc, mask, CFG_FORCE_REDRAW);
     }
 }
 

Modified: xfwm4/trunk/src/client.h
===================================================================
--- xfwm4/trunk/src/client.h	2006-09-18 21:41:19 UTC (rev 23177)
+++ xfwm4/trunk/src/client.h	2006-09-19 19:40:08 UTC (rev 23178)
@@ -284,7 +284,7 @@
 void     clientUpdateUrgency (Client *);
 void     clientCoordGravitate (Client *, int, int *, int *);
 void     clientGravitate (Client *, int);
-void     clientConfigure (Client *, XWindowChanges *, int, unsigned short);
+void     clientConfigure (Client *, XWindowChanges *, unsigned long, unsigned short);
 void     clientGetMWMHints (Client *, gboolean);
 void     clientGetWMNormalHints (Client *, gboolean);
 void     clientGetWMProtocols (Client *);



More information about the Xfce4-commits mailing list