Sawfish
Line 9: Line 9:
   
 
Since focusing a window without also raising it is the desired behaviour with the RISC-OS alike ROX Desktop Environment, I was
 
Since focusing a window without also raising it is the desired behaviour with the RISC-OS alike ROX Desktop Environment, I was
looking for a possibility to do this with sawfish. I ended up adding a new pseudo raise-function which I call "focus-and-pass-through-click" by cloning "raise-and-pass-through-click" without the the raise command.
+
looking for a possibility to do this with sawfish. I ended up adding a new pseudo raise-function which I call "focus-and-pass-through-click" by cloning "raise-and-pass-through-click" without the raise command.
   
 
== Patch ==
 
== Patch ==

Revision as of 13:58, 13 March 2008

Browse all patches

Author

Rüdiger Otte

Synopsis

Since focusing a window without also raising it is the desired behaviour with the RISC-OS alike ROX Desktop Environment, I was looking for a possibility to do this with sawfish. I ended up adding a new pseudo raise-function which I call "focus-and-pass-through-click" by cloning "raise-and-pass-through-click" without the raise command.

Patch

--- sawfish-1.3.3.orig/lisp/sawfish/wm/autoload.jl	2007-07-29 11:45:04.000000000 +0200
+++ sawfish-1.3.3/lisp/sawfish/wm/autoload.jl	2008-03-12 15:06:36.000000000 +0100
@@ -98,6 +98,7 @@
 (autoload-command (quote raise-and-pass-through-click) (quote sawfish.wm.commands.raise-commands))
 (autoload-command (quote raise-and-pass-through-click-if-focused) (quote sawfish.wm.commands.raise-commands))
 (autoload-command (quote raise-or-pass-through-click) (quote sawfish.wm.commands.raise-commands))
+(autoload-command (quote focus-and-pass-through-click) (quote sawfish.wm.commands.raise-commands))
 (autoload-command (quote raise-window-and-pass-through-click) (quote sawfish.wm.commands.raise-commands) #:class 'advanced)
 (autoload-command (quote raise-group-and-pass-through-click) (quote sawfish.wm.commands.raise-commands) #:class 'advanced)
 (autoload-command (quote raise-transients-and-pass-through-click) (quote sawfish.wm.commands.raise-commands) #:class 'advanced)

--- sawfish-1.3.3.orig/lisp/sawfish/wm/commands/raise-commands.jl	2007-07-29 11:45:04.000000000 +0200
+++ sawfish-1.3.3/lisp/sawfish/wm/commands/raise-commands.jl	2008-03-12 15:06:47.000000000 +0100
@@ -61,6 +61,12 @@
 	(maybe-raise-window w)
       (replay-pointer w)))
 
+  (define (focus-pass-through-click w)
+    "Focus the window that received the current event, then replay any pointer
+events that invoked the command."
+    (when (windowp w))
+    (replay-pointer w))
+
   ;;###autoload
   (define-command 'raise-and-pass-through-click
     and-pass-through-click #:spec "%W")
@@ -68,6 +74,8 @@
     and-pass-through-click-if-focused #:spec "%w")
   (define-command 'raise-or-pass-through-click
     or-pass-through-click #:spec "%w")
+  (define-command 'focus-and-pass-through-click
+    focus-pass-through-click #:spec "%w")
 
 ;;; these should probably be considered obsolete

Community's reasons for inclusion or rejection

Patch submitters, please vote also! Yes, obviosuly your vote will be positive, but it's the place to give your explanation why this patch is good for all Sawfish users, and why it is correct - good reasons for inclusion.

When voting anonymously please write your name, so that it can be associated with your posts on the mailing list. If you are logged in you can sign yourself by typing four tilda characters: ~~~~.

  • Yes vote: yes., No vote: no. or Wtf vote: pondering. - no votes yet...