[Xfce4-commits] [xfce/xfwm4] 03/04: client: Check GTK_HIDE_TITLEBAR_WHEN_MAXIMIZED

noreply at xfce.org noreply at xfce.org
Thu Jul 26 07:17:54 CEST 2018


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

o   l   i   v   i   e   r       p   u   s   h   e   d       a       c   o   m   m   i   t       t   o       b   r   a   n   c   h       m   a   s   t   e   r   
   in repository xfce/xfwm4.

commit 5f7a1f5f91fd0eec91a4a88c669847fd2567a270
Author: Olivier Fourdan <fourdan at xfce.org>
Date:   Sun Jul 22 10:58:42 2018 +0200

    client: Check GTK_HIDE_TITLEBAR_WHEN_MAXIMIZED
    
    Check that value for GTK_HIDE_TITLEBAR_WHEN_MAXIMIZED has actually
    changed before reconfiguring the window.
---
 src/client.c |  4 +++-
 src/events.c | 10 ++++++----
 2 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/src/client.c b/src/client.c
index 3059fb6..d58d7c3 100644
--- a/src/client.c
+++ b/src/client.c
@@ -4063,6 +4063,7 @@ clientGetGtkHideTitlebar (Client * c)
 {
     ScreenInfo *screen_info;
     DisplayInfo *display_info;
+    unsigned long old_value;
     long val;
 
     g_return_val_if_fail (c != NULL, FALSE);
@@ -4070,13 +4071,14 @@ clientGetGtkHideTitlebar (Client * c)
 
     screen_info = c->screen_info;
     display_info = screen_info->display_info;
+    old_value = FLAG_TEST (c->flags, CLIENT_FLAG_HIDE_TITLEBAR);
     FLAG_UNSET (c->flags, CLIENT_FLAG_HIDE_TITLEBAR);
 
     if (getHint (display_info, c->window, GTK_HIDE_TITLEBAR_WHEN_MAXIMIZED, &val) &&( val != 0))
     {
         FLAG_SET (c->flags, CLIENT_FLAG_HIDE_TITLEBAR);
     }
-    return FLAG_TEST (c->flags, CLIENT_FLAG_HIDE_TITLEBAR);
+    return old_value != FLAG_TEST (c->flags, CLIENT_FLAG_HIDE_TITLEBAR);
 }
 
 #ifdef HAVE_LIBSTARTUP_NOTIFICATION
diff --git a/src/events.c b/src/events.c
index 9bd9219..f889edf 100644
--- a/src/events.c
+++ b/src/events.c
@@ -1846,11 +1846,13 @@ handlePropertyNotify (DisplayInfo *display_info, XPropertyEvent * ev)
         else if (ev->atom == display_info->atoms[GTK_HIDE_TITLEBAR_WHEN_MAXIMIZED])
         {
             TRACE ("client \"%s\" (0x%lx) has received a GTK_HIDE_TITLEBAR_WHEN_MAXIMIZED notify", c->name, c->window);
-            clientGetGtkHideTitlebar (c);
-            if (FLAG_TEST (c->flags, CLIENT_FLAG_MAXIMIZED))
+            if (clientGetGtkHideTitlebar (c))
             {
-                clientUpdateMaximizeSize (c);
-                clientReconfigure (c, CFG_FORCE_REDRAW);
+                if (FLAG_TEST (c->flags, CLIENT_FLAG_MAXIMIZED))
+                {
+                    clientUpdateMaximizeSize (c);
+                    clientReconfigure (c, CFG_FORCE_REDRAW);
+                }
             }
         }
 #ifdef HAVE_STARTUP_NOTIFICATION

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


More information about the Xfce4-commits mailing list