Author: olivier
Date: 2007-03-07 21:04:11 +0000 (Wed, 07 Mar 2007)
New Revision: 25133

Modified:
   xfwm4/trunk/src/client.c
   xfwm4/trunk/src/netwm.c
Log:
Update frame extents when the window decoration extents change.

Modified: xfwm4/trunk/src/client.c
===================================================================
--- xfwm4/trunk/src/client.c    2007-03-07 21:03:50 UTC (rev 25132)
+++ xfwm4/trunk/src/client.c    2007-03-07 21:04:11 UTC (rev 25133)
@@ -922,6 +922,14 @@
         wc.width = c->width;
         wc.height = c->height;
         clientConfigure (c, &wc, CWX | CWY | CWWidth | CWHeight, 
CFG_FORCE_REDRAW);
+
+        /* MWM hints can add or remove decorations, update NET_FRAME_EXTENTS 
accordingly */
+        setNetFrameExtents (display_info,
+                            c->window,
+                            frameTop (c),
+                            frameLeft (c),
+                            frameRight (c),
+                            frameBottom (c));
     }
 }
 
@@ -3149,6 +3157,14 @@
     c->height = wc.height;
     c->width = wc.width;
 
+    /* Maximizing may remove decoration on the side, update NET_FRAME_EXTENTS 
accordingly */
+    setNetFrameExtents (display_info,
+                        c->window,
+                        frameTop (c),
+                        frameLeft (c),
+                        frameRight (c),
+                        frameBottom (c));
+
     if (FLAG_TEST (c->xfwm_flags, XFWM_FLAG_MANAGED) && (restore_position))
     {
         /*

Modified: xfwm4/trunk/src/netwm.c
===================================================================
--- xfwm4/trunk/src/netwm.c     2007-03-07 21:03:50 UTC (rev 25132)
+++ xfwm4/trunk/src/netwm.c     2007-03-07 21:04:11 UTC (rev 25133)
@@ -754,6 +754,15 @@
         c->width = wc.width;
     }
     clientSetLayer (c, layer);
+
+    /* Fullscreen has no decoration at all, update NET_FRAME_EXTENTS 
accordingly */
+    setNetFrameExtents (display_info,
+                        c->window,
+                        frameTop (c),
+                        frameLeft (c),
+                        frameRight (c),
+                        frameBottom (c));
+
 }
 
 void

_______________________________________________
Xfce4-commits mailing list
Xfce4-commits@xfce.org
http://foo-projects.org/mailman/listinfo/xfce4-commits

Reply via email to