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

Olivier Fourdan olivier at xfce.org
Sat Dec 23 16:21:15 CET 2006


Author: olivier
Date: 2006-12-23 15:21:15 +0000 (Sat, 23 Dec 2006)
New Revision: 24174

Modified:
   xfwm4/trunk/src/netwm.c
Log:
Forgot to update the NET_WM_STATE when the client requests an update of NET_WM_STATE_DEMANDS_ATTENTION (Bug #2678)

Modified: xfwm4/trunk/src/netwm.c
===================================================================
--- xfwm4/trunk/src/netwm.c	2006-12-23 12:37:09 UTC (rev 24173)
+++ xfwm4/trunk/src/netwm.c	2006-12-23 15:21:15 UTC (rev 24174)
@@ -334,23 +334,6 @@
         }
     }
 
-    if ((first  == display_info->atoms[NET_WM_STATE_DEMANDS_ATTENTION]) ||
-        (second == display_info->atoms[NET_WM_STATE_DEMANDS_ATTENTION]))
-    {
-        if (action == NET_WM_STATE_ADD)
-        {
-            FLAG_SET (c->flags, CLIENT_FLAG_DEMANDS_ATTENTION);
-        }
-        else if (action == NET_WM_STATE_REMOVE)
-        {
-            FLAG_UNSET (c->flags, CLIENT_FLAG_DEMANDS_ATTENTION);
-        }
-        else if (action == NET_WM_STATE_TOGGLE)
-        {
-            FLAG_TOGGLE (c->flags, CLIENT_FLAG_DEMANDS_ATTENTION);
-        }
-    }
-
     if ((first  == display_info->atoms[NET_WM_STATE_MAXIMIZED_HORZ]) ||
         (second == display_info->atoms[NET_WM_STATE_MAXIMIZED_HORZ]) ||
         (first  == display_info->atoms[NET_WM_STATE_MAXIMIZED_VERT]) ||
@@ -542,6 +525,26 @@
         }
         frameDraw (c, TRUE);
     }
+
+    if ((first  == display_info->atoms[NET_WM_STATE_DEMANDS_ATTENTION]) ||
+        (second == display_info->atoms[NET_WM_STATE_DEMANDS_ATTENTION]))
+    {
+        if ((action == NET_WM_STATE_ADD) && !FLAG_TEST (c->flags, CLIENT_FLAG_DEMANDS_ATTENTION))
+        {
+            FLAG_SET (c->flags, CLIENT_FLAG_DEMANDS_ATTENTION);
+            clientSetNetState (c);
+        }
+        else if ((action == NET_WM_STATE_REMOVE) && FLAG_TEST (c->flags, CLIENT_FLAG_DEMANDS_ATTENTION))
+        {
+            FLAG_UNSET (c->flags, CLIENT_FLAG_DEMANDS_ATTENTION);
+            clientSetNetState (c);
+        }
+        else if (action == NET_WM_STATE_TOGGLE)
+        {
+            FLAG_TOGGLE (c->flags, CLIENT_FLAG_DEMANDS_ATTENTION);
+            clientSetNetState (c);
+        }
+    }
 }
 
 void



More information about the Xfce4-commits mailing list