[clfswm-cvs] r133 - in clfswm: . src

pbrochard at common-lisp.net pbrochard at common-lisp.net
Tue May 20 20:35:48 UTC 2008


Author: pbrochard
Date: Tue May 20 16:35:47 2008
New Revision: 133

Modified:
   clfswm/ChangeLog
   clfswm/TODO
   clfswm/src/clfswm-internal.lisp
   clfswm/src/clfswm.lisp
   clfswm/src/package.lisp
Log:
remove-child-in-frame: Destroy the frame window for the removed child and its children.

Modified: clfswm/ChangeLog
==============================================================================
--- clfswm/ChangeLog	(original)
+++ clfswm/ChangeLog	Tue May 20 16:35:47 2008
@@ -1,3 +1,8 @@
+2008-05-20  Philippe Brochard  <pbrochard at common-lisp.net>
+
+	* src/clfswm-internal.lisp (remove-child-in-frame): Destroy the
+	frame window for the removed child and its children.
+
 2008-05-18  Philippe Brochard  <pbrochard at common-lisp.net>
 
 	* src/clfswm-autodoc.lisp (produce-*-doc-*): Add a note to use the

Modified: clfswm/TODO
==============================================================================
--- clfswm/TODO	(original)
+++ clfswm/TODO	Tue May 20 16:35:47 2008
@@ -7,6 +7,29 @@
 ===============
 Should handle these soon.
 
+- Use conpressed motion events for clisp. [Philippe]
+
+- A frame parameter to display or not the frame window. [Philippe]
+
+- Remote access to the clfswm REPL [Philippe]
+
+- cd/pwd a la shell to navigate throw frames. [Philippe] 
+
+- Hide/Unhide frame [Philippe]
+
+- Undo/redo (any idea to implement this is welcome)
+
+- Raise/lower frame - this can be done with children order [Philippe]
+
+- Show config -> list and display documentation for all tweakable global variables. [Philippe]
+
+- A Gimp layout example [Philippe]
+
+- Hook to open next window in named/numbered frame [Philippe]
+
+- Ensure-unique-number/name (new function) [Philippe]
+
+
 
 MAYBE
 =====
@@ -31,20 +54,3 @@
     * up
     * down
 
-- Remote access to the clfswm REPL [Philippe]
-
-- cd/pwd a la shell to navigate throw frames. [Philippe] 
-
-- Hide/Unhide frame [Philippe]
-
-- Undo/redo (any idea to implement this is welcome)
-
-- Raise/lower frame - this can be done with children order [Philippe]
-
-- Show config -> list and display documentation for all tweakable global variables. [Philippe]
-
-- A Gimp layout example [Philippe]
-
-- Hook to open next window in named/numbered frame [Philippe]
-
-- Ensure-unique-number/name (new function) [Philippe]

Modified: clfswm/src/clfswm-internal.lisp
==============================================================================
--- clfswm/src/clfswm-internal.lisp	(original)
+++ clfswm/src/clfswm-internal.lisp	Tue May 20 16:35:47 2008
@@ -244,6 +244,8 @@
 
 
 
+
+
 (defun add-frame (frame parent)
   (push frame (frame-child parent))
   frame)
@@ -733,7 +735,13 @@
 (defun remove-child-in-frame (child frame)
   "Remove the child in frame"
   (when (frame-p frame)
-    (setf (frame-child frame) (remove child (frame-child frame) :test #'equal))))
+    (setf (frame-child frame) (remove child (frame-child frame) :test #'equal))
+    (let ((frame-windows nil))
+      (with-all-frames (child f)
+	(pushnew (frame-window f) frame-windows))
+      (dolist (win frame-windows)
+	(unless (find-frame-window win)
+	  (xlib:destroy-window win))))))
 
 (defun remove-child-in-frames (child root)
   "Remove child in the frame root and in all its children"

Modified: clfswm/src/clfswm.lisp
==============================================================================
--- clfswm/src/clfswm.lisp	(original)
+++ clfswm/src/clfswm.lisp	Tue May 20 16:35:47 2008
@@ -195,10 +195,6 @@
   (setf *screen* (first (xlib:display-roots *display*))
 	*root* (xlib:screen-root *screen*)
 	*no-focus-window* (xlib:create-window :parent *root* :x 0 :y 0 :width 1 :height 1)
-	*root-gc* (xlib:create-gcontext :drawable *root*
-					:foreground (get-color *color-unselected*)
-					:background (get-color "Black")
-					:line-style :solid)
 	*default-font* (xlib:open-font *display* *default-font-string*)
 	*pixmap-buffer* (xlib:create-pixmap :width (xlib:screen-width *screen*)
 					    :height (xlib:screen-height *screen*)

Modified: clfswm/src/package.lisp
==============================================================================
--- clfswm/src/package.lisp	(original)
+++ clfswm/src/package.lisp	Tue May 20 16:35:47 2008
@@ -37,7 +37,6 @@
 (defparameter *screen* nil)
 (defparameter *root* nil)
 (defparameter *no-focus-window* nil)
-(defparameter *root-gc* nil)
 
 (defparameter *pixmap-buffer* nil)
 



More information about the clfswm-cvs mailing list