_NET_WM_USER_TIME



Hi,

I tried to put a patch on the Wiki, but it contains a ^L and that gets
rewritten--presumably by the wiki software--to something else.  Which
makes the patch non-applicable.  So I'm posting it here.

Index: lisp/sawfish/wm/state/wm-spec.jl
===================================================================
--- lisp/sawfish/wm/state/wm-spec.jl	(revision 4273)
+++ lisp/sawfish/wm/state/wm-spec.jl	(working copy)
@@ -123,8 +123,9 @@
      _NET_WM_WINDOW_TYPE_TOOLBAR
      _NET_WM_WINDOW_TYPE_MENU
      _NET_WM_WINDOW_TYPE_UTILITY
-     _NET_WM_WINDOW_TYPE_SPLASH])
-  
+     _NET_WM_WINDOW_TYPE_SPLASH
+     _NET_WM_USER_TIME])
+ 
   (defvar wm-spec-below-depth -2)
   (defvar wm-spec-above-depth +2)
 
@@ -322,8 +323,12 @@
 
     (let ((geom (get-x-property w '_NET_WM_ICON_GEOMETRY)))
       (when geom
-	(update-icon-geometry w (nth 2 geom)))))
+	(update-icon-geometry w (nth 2 geom))))
 
+    (when (equal (get-x-property w '_NET_WM_USER_TIME)
+		 '(CARDINAL 32 #(0)))
+      (window-put w 'inhibit-focus-when-mapped t)))
+
 
 ;;; helper functions
 
Index: lisp/sawfish/wm/state/transient.jl
===================================================================
--- lisp/sawfish/wm/state/transient.jl	(revision 4273)
+++ lisp/sawfish/wm/state/transient.jl	(working copy)
@@ -166,7 +166,8 @@
 		(transient-of-p w (input-focus) #:allow-root t))
 	   (set-input-focus w))
 	  ((and (or (and focus-windows-when-mapped
-			 (not (window-get w 'never-focus)))
+			 (not (window-get w 'never-focus))
+			 (not (window-get w 'inhibit-focus-when-mapped)))
 		    (window-get w 'focus-when-mapped))
 		(or (not (window-transient-p w))
 		    (eql (window-transient-p w) (root-window-id)))


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]