[Xfce4-commits] [xfce/xfwm4] 02/03: Do not update state while moving/resizing

noreply at xfce.org noreply at xfce.org
Tue Jan 20 09:25:02 CET 2015


This is an automated email from the git hooks/post-receive script.

olivier pushed a commit to branch master
in repository xfce/xfwm4.

commit 5c9d151712bca6f99483d2b6cf103bab2daefd77
Author: Olivier Fourdan <fourdan at xfce.org>
Date:   Tue Jan 20 09:02:28 2015 +0100

    Do not update state while moving/resizing
    
    CSD windows may be tempted to adjust their size otherwise.
    
    Signed-off-by: Olivier Fourdan <fourdan at xfce.org>
---
 src/client.c     |   12 ++++++++++--
 src/moveresize.c |    6 ++++++
 2 files changed, 16 insertions(+), 2 deletions(-)

diff --git a/src/client.c b/src/client.c
index d07dda4..6ad4f56 100644
--- a/src/client.c
+++ b/src/client.c
@@ -3307,7 +3307,11 @@ clientToggleMaximized (Client *c, int mode, gboolean restore_position)
     {
         clientConfigure (c, &wc, CWWidth | CWHeight | CWX | CWY, CFG_FORCE_REDRAW);
     }
-    clientSetNetState (c);
+    /* Do not update the state while moving/resizing, CSD windows may resize */
+    if (!FLAG_TEST (c->xfwm_flags, XFWM_FLAG_MOVING_RESIZING))
+    {
+        clientSetNetState (c);
+    }
 
     return TRUE;
 }
@@ -3382,7 +3386,11 @@ clientTile (Client *c, gint cx, gint cy, tilePositionType tile, gboolean send_co
         clientSetNetActions (c);
         clientReconfigure (c, CFG_FORCE_REDRAW);
     }
-    clientSetNetState (c);
+    /* Do not update the state while moving/resizing, CSD windows may resize */
+    if (!FLAG_TEST (c->xfwm_flags, XFWM_FLAG_MOVING_RESIZING))
+    {
+        clientSetNetState (c);
+    }
 
     return TRUE;
 }
diff --git a/src/moveresize.c b/src/moveresize.c
index 9216d0e..558fcb2 100644
--- a/src/moveresize.c
+++ b/src/moveresize.c
@@ -1200,6 +1200,12 @@ clientMove (Client * c, XEvent * ev)
     /* Set window opacity to its original value */
     clientSetOpacity (c, c->opacity, OPACITY_MOVE, 0);
 
+    /* Update state if changed */
+    if (passdata.cancel_flags != c->flags)
+    {
+        clientSetNetState (c);
+    }
+
     wc.x = c->x;
     wc.y = c->y;
     if (passdata.move_resized)

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Xfce4-commits mailing list