[clfswm-cvs] r317 - in clfswm: . src
Philippe Brochard
pbrochard at common-lisp.net
Sat Sep 11 12:22:10 UTC 2010
Author: pbrochard
Date: Sat Sep 11 08:22:09 2010
New Revision: 317
Log:
src/clfswm-util.lisp (update-menus): List all directories and subdirectories in /usr/share:/usr/local/share:/usr/share:/usr/local/share:/usr/share:/usr/local/share:/usr/share:/usr/local/share:/usr/share:/usr/local/share/applications.
Modified:
clfswm/ChangeLog
clfswm/TODO
clfswm/src/clfswm-corner.lisp
clfswm/src/clfswm-util.lisp
clfswm/src/clfswm.lisp
clfswm/src/config.lisp
Modified: clfswm/ChangeLog
==============================================================================
--- clfswm/ChangeLog (original)
+++ clfswm/ChangeLog Sat Sep 11 08:22:09 2010
@@ -1,3 +1,12 @@
+2010-09-11 Philippe Brochard <pbrochard at common-lisp.net>
+
+ * src/clfswm-corner.lisp (present-clfswm-terminal)
+ (present-virtual-keyboard): Use a function (generic-present-body)
+ instead of a macro (generate-present-body).
+
+ * src/clfswm-util.lisp (update-menus): List all directories and
+ subdirectories in $XDG_DATA_DIRS/applications.
+
2010-09-10 Philippe Brochard <pbrochard at common-lisp.net>
* src/clfswm-corner.lisp (generate-present-body): New macro.
Modified: clfswm/TODO
==============================================================================
--- clfswm/TODO (original)
+++ clfswm/TODO Sat Sep 11 08:22:09 2010
@@ -7,8 +7,6 @@
===============
Should handle these soon.
-- Use xdg menu spec instead of the Debian specific update-menu command.
-
- Add a data slot to tell if a frame must hide or not its floating windows when its not selected.
@@ -17,7 +15,7 @@
- cd/pwd a la shell to navigate through frames.
-- Zoom
+- Zoom:
Concept:
* zoom out: Behave as if the application window is bigger for the application but completely drawn in a small amount of space (miniature). The zoom factor is inferior to 100%
Modified: clfswm/src/clfswm-corner.lisp
==============================================================================
--- clfswm/src/clfswm-corner.lisp (original)
+++ clfswm/src/clfswm-corner.lisp Sat Sep 11 08:22:09 2010
@@ -123,37 +123,39 @@
(return-from wait-window-in-query-tree win)))))
-(defmacro generate-present-body (cmd wait-test win &optional focus-p)
- `(progn
- (stop-button-event)
- (unless (find-window-in-query-tree ,win)
- (do-shell ,cmd)
- (setf ,win (wait-window-in-query-tree ,wait-test))
- (hide-window ,win))
- (cond ((window-hidden-p ,win) (unhide-window ,win)
- (when ,focus-p
- (focus-window ,win))
- (raise-window ,win))
- (t (hide-window ,win)
- (show-all-children nil)))
- t))
+(defun generic-present-body (cmd wait-test win &optional focus-p)
+ (stop-button-event)
+ (unless (find-window-in-query-tree win)
+ (do-shell cmd)
+ (setf win (wait-window-in-query-tree wait-test))
+ (hide-window win))
+ (cond ((window-hidden-p win) (unhide-window win)
+ (when focus-p
+ (focus-window win))
+ (raise-window win))
+ (t (hide-window win)
+ (show-all-children nil)))
+ win)
+
(let (win)
(defun present-virtual-keyboard ()
"Present a virtual keyboard"
- (generate-present-body *virtual-keyboard-cmd*
- (lambda (win)
- (string-equal (xlib:get-wm-class win) "xvkbd"))
- win)))
+ (setf win (generic-present-body *virtual-keyboard-cmd*
+ (lambda (win)
+ (string-equal (xlib:get-wm-class win) "xvkbd"))
+ win))
+ t))
(let (win)
(defun present-clfswm-terminal ()
"Hide/Unhide a terminal"
- (generate-present-body *clfswm-terminal-cmd*
- (lambda (win)
- (string-equal (xlib:wm-name win) *clfswm-terminal-name*))
- win
- t)))
+ (setf win (generic-present-body *clfswm-terminal-cmd*
+ (lambda (win)
+ (string-equal (xlib:wm-name win) *clfswm-terminal-name*))
+ win
+ t))
+ t))
Modified: clfswm/src/clfswm-util.lisp
==============================================================================
--- clfswm/src/clfswm-util.lisp (original)
+++ clfswm/src/clfswm-util.lisp Sat Sep 11 08:22:09 2010
@@ -1266,7 +1266,7 @@
(found (make-hash-table :test #'equal)))
(dolist (dir (remove-duplicates
(split-string (getenv "XDG_DATA_DIRS") #\:) :test #'string-equal))
- (dolist (desktop (directory (concatenate 'string dir "/applications/*.desktop")))
+ (dolist (desktop (directory (concatenate 'string dir "/applications/**/*.desktop")))
(unless (gethash (file-namestring desktop) found)
(setf (gethash (file-namestring desktop) found) t)
(um-add-desktop desktop menu)
Modified: clfswm/src/clfswm.lisp
==============================================================================
--- clfswm/src/clfswm.lisp (original)
+++ clfswm/src/clfswm.lisp Sat Sep 11 08:22:09 2010
@@ -178,8 +178,7 @@
:height (xlib:screen-height *screen*)
:depth (xlib:screen-root-depth *screen*)
:drawable *root*)
- *in-second-mode* nil
- *vt-keyboard-on* nil)
+ *in-second-mode* nil)
(init-modifier-list)
(xgrab-init-pointer)
(xgrab-init-keyboard)
Modified: clfswm/src/config.lisp
==============================================================================
--- clfswm/src/config.lisp (original)
+++ clfswm/src/config.lisp Sat Sep 11 08:22:09 2010
@@ -123,8 +123,6 @@
xvkbd.customization: -french
xvkbd.keypad: false
And make it always on top")
-(defparameter *virtual-keyboard-kill-cmd* "pkill xvkbd"
- "Config(Corner group): The command to stop the virtual keyboard")
(defparameter *clfswm-terminal-name* "clfswm-terminal"
"Config(Corner group): The clfswm terminal name")
More information about the clfswm-cvs
mailing list