[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