[clfswm-git]CLFSWM - A(nother) Common Lisp FullScreen Window Manager branch master updated. R-1212-51-g51f9f15

Philippe Brochard pbrochard at common-lisp.net
Fri Dec 13 20:53:35 UTC 2013


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CLFSWM - A(nother) Common Lisp FullScreen Window Manager".

The branch, master has been updated
       via  51f9f1574d42c723e55577fbc4a5f858e2af1d14 (commit)
      from  544f93c4df12c31b343f7e60bdbba40a8041b361 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 51f9f1574d42c723e55577fbc4a5f858e2af1d14
Author: Philippe Brochard <pbrochard at common-lisp.net>
Date:   Fri Dec 13 21:52:35 2013 +0100

    Set expose windows and gcontexts to nil when done in expose-mode

diff --git a/src/clfswm-expose-mode.lisp b/src/clfswm-expose-mode.lisp
index 22c52f8..31fbee1 100644
--- a/src/clfswm-expose-mode.lisp
+++ b/src/clfswm-expose-mode.lisp
@@ -88,6 +88,7 @@
                           (expose-child-string ex-child))
         (copy-pixmap-buffer window gc)))))
 
+
 (defun expose-create-window (ex-child)
   (let ((child (expose-child-child ex-child)))
     (with-current-child (child)
@@ -182,8 +183,8 @@
     (multiple-value-bind (letters return)
         (query-string "Which child ?")
       (let ((ex-child (case return
-                     (:return (expose-find-child-from-letters letters))
-                     (:click *expose-selected-child*))))
+                        (:return (expose-find-child-from-letters letters))
+                        (:click *expose-selected-child*))))
         (when ex-child
           (expose-child-child ex-child))))))
 
@@ -195,7 +196,9 @@
     (awhen (expose-child-gc ex-child)
       (xlib:free-gcontext it))
     (awhen (expose-child-window ex-child)
-      (xlib:destroy-window it)))
+      (xlib:destroy-window it))
+    (setf (expose-child-gc ex-child) nil
+          (expose-child-window ex-child) nil))
   (when *expose-font*
     (xlib:close-font *expose-font*))
   (expose-unpresent-windows))
diff --git a/src/clfswm-fastswitch-mode.lisp b/src/clfswm-fastswitch-mode.lisp
index 310cb89..39c1b5d 100644
--- a/src/clfswm-fastswitch-mode.lisp
+++ b/src/clfswm-fastswitch-mode.lisp
@@ -61,7 +61,7 @@
       (xlib:draw-glyphs *pixmap-buffer* *fastswitch-gc*
                         (* (xlib:max-char-width *fastswitch-font*) posx)
                         placey
-                        (child-fullname (expose-child-child ex-child)))
+                        (ensure-printable (child-fullname (expose-child-child ex-child))))
       (incf posx (1+ (length (child-fullname (expose-child-child ex-child))))))
     posx))
 
diff --git a/src/clfswm-internal.lisp b/src/clfswm-internal.lisp
index b322c38..01807cf 100644
--- a/src/clfswm-internal.lisp
+++ b/src/clfswm-internal.lisp
@@ -252,10 +252,10 @@
 (defgeneric set-child-name (child name))
 
 (defmethod set-child-name ((child xlib:window) name)
-  (setf (xlib:wm-name child) name))
+  (setf (xlib:wm-name child) (ensure-printable name)))
 
 (defmethod set-child-name ((child frame) name)
-  (setf (frame-name child) name))
+  (setf (frame-name child) (ensure-printable name)))
 
 (defmethod set-child-name (child name)
   (declare (ignore child name)))
@@ -268,14 +268,12 @@
 (defgeneric child-fullname (child))
 
 (defmethod child-fullname ((child xlib:window))
-  (ensure-printable
-   (format nil "~A (~A)" (or (xlib:wm-name child) "?") (or (xlib:get-wm-class child) "?"))))
+  (format nil "~A (~A)" (or (xlib:wm-name child) "?") (or (xlib:get-wm-class child) "?")))
 
 (defmethod child-fullname ((child frame))
-  (ensure-printable
-   (aif (frame-name child)
-        (format nil "~A (Frame ~A)" it (frame-number child))
-        (format nil "Frame ~A" (frame-number child)))))
+  (aif (frame-name child)
+       (format nil "~A (Frame ~A)" it (frame-number child))
+       (format nil "Frame ~A" (frame-number child))))
 
 (defmethod child-fullname (child)
   (declare (ignore child))
diff --git a/src/xlib-util.lisp b/src/xlib-util.lisp
index 5d8cb0f..dbe4c2a 100644
--- a/src/xlib-util.lisp
+++ b/src/xlib-util.lisp
@@ -1003,6 +1003,7 @@ they should be windows. So use this function to make a window out of them."
                              t))))
 
 
+
 (defun copy-pixmap-buffer (window gc)
   (xlib:copy-area *pixmap-buffer* gc
   		  0 0 (x-drawable-width window) (x-drawable-height window)

-----------------------------------------------------------------------

Summary of changes:
 src/clfswm-expose-mode.lisp     |    9 ++++++---
 src/clfswm-fastswitch-mode.lisp |    2 +-
 src/clfswm-internal.lisp        |   14 ++++++--------
 src/xlib-util.lisp              |    1 +
 4 files changed, 14 insertions(+), 12 deletions(-)


hooks/post-receive
-- 
CLFSWM - A(nother) Common Lisp FullScreen Window Manager



More information about the clfswm-cvs mailing list