[sawfish] added fullscreen and new-workspace window-matcher



commit ec88a4eb70aec703cbf67d05011d4e14481cd0ec
Author: chrisb <zanghar freenet de>
Date:   Wed Jul 15 20:44:56 2009 +0200

    added fullscreen and new-workspace window-matcher

 ChangeLog                           |    2 ++
 lisp/sawfish/wm/ext/match-window.jl |   21 +++++++++++++++++++--
 man/news.texi                       |    2 ++
 3 files changed, 23 insertions(+), 2 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index b3194c6..ff188b4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,8 @@
 2009-07-15  Christopher Bratusek <zanghar freenet de>
 	* src/Makefile.in: add --tag=CC there necessary on some systems [Gentoo]
 
+	* lisp/sawfish/wm/ext/match-window.jl: added fullscreen and new-workspace matches [Jeremy Hankins]
+
 2009-07-10  Christopher Bratusek <zanghar freenet de>
 	* sawfish-ksm.desktop: make sawfish appear in KDEs WM Selector
 
diff --git a/lisp/sawfish/wm/ext/match-window.jl b/lisp/sawfish/wm/ext/match-window.jl
index 26f53a3..c68117b 100644
--- a/lisp/sawfish/wm/ext/match-window.jl
+++ b/lisp/sawfish/wm/ext/match-window.jl
@@ -101,13 +101,15 @@
        (window-list-skip boolean)
        (task-list-skip boolean)
        (never-iconify boolean)
-       (never-maximize boolean))
+       (never-maximize boolean)
+       (fullscreen boolean))
       (other ,(_ "Other")
        (unique-name boolean)
        (auto-gravity boolean)
        (shade-hover boolean)
        (transients-above (choice all parents none))
-       (ignore-stacking-requests boolean))))
+       (ignore-stacking-requests boolean)
+       (new-workspace boolean))))
 
   ;; alist of (PROPERTY . FEATURE) mapping properties to the lisp
   ;; libraries implementing them
@@ -382,6 +384,21 @@
      (declare (unused prop))
      (set-focus-mode w value)))
 
+  (define-match-window-setter 'fullscreen
+   (lambda (w prop value)
+     (declare (unused prop))
+     (when value
+       (window-put w 'queued-fullscreen-maximize t))))
+
+  (define-match-window-setter 'new-workspace
+   (lambda (w prop value)
+     (declare (unused prop))
+     (when value
+       (let ((space (car (workspace-limits))))
+         (while (not (workspace-empty-p space))
+	   (setq space (1+ space)))
+	     (set-window-workspaces w (list space))))))
+
   (define-match-window-setter 'maximized
    (lambda (w prop value)
      (declare (unused prop))
diff --git a/man/news.texi b/man/news.texi
index 52338fb..16b1576 100644
--- a/man/news.texi
+++ b/man/news.texi
@@ -23,6 +23,8 @@ they occurred between. For more detailed information see the
 
 @item 5 new move-cursor command 4 for moving diagonally (move-cursor -northwest, -northeast, -southwest, -southeast), and move-cursor-center [Christopher Bratusek]
 
+ item Added fullscreen and new-workspace matches [Jeremy Hankins]
+
 @end itemize
 @item Other Changes:
 @itemize @minus



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