Author: olivier
Date: 2007-10-20 19:29:21 +0000 (Sat, 20 Oct 2007)
New Revision: 26160

Modified:
   xfwm4/branches/xfce_4_4/src/netwm.c
Log:
Set all dock type windows sticky by default, a few other window managers 
implement this behaviour and some apps rely on this (bug #3609)

Modified: xfwm4/branches/xfce_4_4/src/netwm.c
===================================================================
--- xfwm4/branches/xfce_4_4/src/netwm.c 2007-10-20 19:21:43 UTC (rev 26159)
+++ xfwm4/branches/xfce_4_4/src/netwm.c 2007-10-20 19:29:21 UTC (rev 26160)
@@ -317,7 +317,7 @@
     if ((first  == display_info->atoms[NET_WM_STATE_STICKY]) ||
         (second == display_info->atoms[NET_WM_STATE_STICKY]))
     {
-        if (!clientIsValidTransientOrModal (c) && FLAG_TEST (c->xfwm_flags, 
XFWM_FLAG_HAS_STICK))
+        if (FLAG_TEST (c->xfwm_flags, XFWM_FLAG_HAS_STICK))
         {
             if ((action == NET_WM_STATE_ADD) && !FLAG_TEST (c->flags, 
CLIENT_FLAG_STICKY))
             {
@@ -1169,8 +1169,9 @@
             TRACE ("atom net_wm_window_type_dock detected");
             c->type = WINDOW_DOCK;
             c->initial_layer = WIN_LAYER_DOCK;
-            FLAG_SET (c->flags,
-                CLIENT_FLAG_SKIP_PAGER | CLIENT_FLAG_SKIP_TASKBAR);
+             FLAG_SET (c->flags,
+                CLIENT_FLAG_SKIP_PAGER | CLIENT_FLAG_STICKY |
+                CLIENT_FLAG_SKIP_TASKBAR);
             FLAG_UNSET (c->xfwm_flags,
                 XFWM_FLAG_HAS_BORDER |  XFWM_FLAG_HAS_MOVE |
                 XFWM_FLAG_HAS_HIDE | XFWM_FLAG_HAS_MAXIMIZE |

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

Reply via email to