[sawfish] set default value to 0 if unset (= -65355) before



commit fcc9e82f75917093e6fc58d28e04ddd14b1e7a1e
Author: chrisb <zanghar freenet de>
Date:   Thu Aug 27 21:23:52 2009 +0200

    set default value to 0 if unset (= -65355) before

 ChangeLog                           |    2 ++
 lisp/sawfish/wm/ext/match-window.jl |   18 +++++++++++++++---
 2 files changed, 17 insertions(+), 3 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index d4c7bf7..fdcc498 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -25,6 +25,8 @@
 
 	* man/news.texi: updated
 
+	* lisp/sawfish/wm/match-window.jl: set default to 0 if unset previously (avoids -65355 as default)
+
 2009-08-09  Christopher Bratusek <zanghar freenet de>
 	* lisp/sawfish/wm/ext/match-window.jl: move rename-window here, as it requires prompt but this either does not 
 	                                       load properly in windows.jl or breaks sawfish-ui if require'ed instead of open'ed
diff --git a/lisp/sawfish/wm/ext/match-window.jl b/lisp/sawfish/wm/ext/match-window.jl
index b18c88c..9c2afb0 100644
--- a/lisp/sawfish/wm/ext/match-window.jl
+++ b/lisp/sawfish/wm/ext/match-window.jl
@@ -47,7 +47,8 @@
 	    remove-window-matcher
 	    match-window
 	    rename-window
-	    rename-window-interactive)
+	    rename-window-interactive
+	    keymap-trans)
 
     (open rep
 	  rep.system
@@ -73,12 +74,12 @@
     `((placement ,(_ "Placement")
        (ignore-program-position boolean)
        (place-mode ,(lambda () `(choice ,@placement-modes)))
-       (position (pair number number))
+       (position (pair (number 0) (number 0)))
        (dimensions (pair (number 1) (number 1)))
        (workspace (number 1))
        (viewport (pair (number 1) (number 1)))
        (depth (number -16 16))
-       (placement-weight number)
+       (placement-weight (number 0))
        (fixed-position boolean)
        (maximized (choice all vertical horizontal))
        (new-workspace boolean)
@@ -455,6 +456,17 @@
      (when (memq value '(all horizontal))
        (window-put w 'queued-horizontal-maximize t))))
 
+  (define-match-window-setter 'keymap-trans
+    (lambda (w prop value)
+     (declare (unused prop))
+      (let ((keymap (or (window-get w 'keymap)
+                        (window-put w 'keymap (copy-sequence window-keymap)))))
+        (mapcar
+         (lambda (pair)         ; pair of from and to keys
+            (bind-keys keymap (car pair)
+              (lambda () (interactive)
+                (synthesize-event (lookup-event (cadr pair)) (input-focus))))) value))))
+
   (define (rename-window window new-name)
     (set-x-text-property window 'WM_NAME (vector new-name)
     (set-x-text-property window '_NET_WM_NAME (vector new-name))))



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