[clfswm-cvs] r447 - in clfswm: . src
Philippe Brochard
pbrochard at common-lisp.net
Mon Apr 18 12:06:26 UTC 2011
Author: pbrochard
Date: Mon Apr 18 08:06:26 2011
New Revision: 447
Log:
* src/clfswm-pack.lisp (implode-frame, implode-current-frame): New functions. Absorb all frames subchildren in frame. Explode frame opposite.
Modified:
clfswm/ChangeLog
clfswm/TODO
clfswm/src/clfswm-pack.lisp
clfswm/src/menu-def.lisp
Modified: clfswm/ChangeLog
==============================================================================
--- clfswm/ChangeLog (original)
+++ clfswm/ChangeLog Mon Apr 18 08:06:26 2011
@@ -2,6 +2,8 @@
* src/clfswm-pack.lisp (resize-frame-constrained): Takes care of
border size.
+ (implode-frame, implode-current-frame): New functions. Absorb all
+ frames subchildren in frame. Explode frame opposite.
2011-04-17 Philippe Brochard <pbrochard at common-lisp.net>
Modified: clfswm/TODO
==============================================================================
--- clfswm/TODO (original)
+++ clfswm/TODO Mon Apr 18 08:06:26 2011
@@ -9,8 +9,6 @@
-> Nothing here yet.
--> implode
-
FOR THE NEXT RELEASE
====================
Modified: clfswm/src/clfswm-pack.lisp
==============================================================================
--- clfswm/src/clfswm-pack.lisp (original)
+++ clfswm/src/clfswm-pack.lisp Mon Apr 18 08:06:26 2011
@@ -211,6 +211,22 @@
(leave-second-mode))
+(defun implode-frame (frame)
+ "Absorb all frames subchildren in frame (explode frame opposite)"
+ (when (frame-p frame)
+ (dolist (child (frame-child frame))
+ (when (frame-p child)
+ (dolist (subchild (frame-child child))
+ (setf (frame-child frame) (append (frame-child frame) (list subchild))))
+ (remove-child-in-frame child frame)))))
+
+(defun implode-current-frame ()
+ "Absorb all frames subchildren in frame (explode frame opposite)"
+ (implode-frame *current-child*)
+ (leave-second-mode))
+
+
+
;;;;;,-----
;;;;;| Constrained move/resize frames
Modified: clfswm/src/menu-def.lisp
==============================================================================
--- clfswm/src/menu-def.lisp (original)
+++ clfswm/src/menu-def.lisp Mon Apr 18 08:06:26 2011
@@ -165,11 +165,12 @@
(add-menu-key 'frame-miscellaneous-menu "s" 'show-all-frames-info)
-(add-menu-key 'frame-miscellaneous-menu "i" 'hide-all-frames-info)
+(add-menu-key 'frame-miscellaneous-menu "a" 'hide-all-frames-info)
(add-menu-key 'frame-miscellaneous-menu "h" 'hide-current-frame-window)
(add-menu-key 'frame-miscellaneous-menu "w" 'show-current-frame-window)
(add-menu-key 'frame-miscellaneous-menu "u" 'renumber-current-frame)
(add-menu-key 'frame-miscellaneous-menu "x" 'explode-current-frame)
+(add-menu-key 'frame-miscellaneous-menu "i" 'implode-current-frame)
More information about the clfswm-cvs
mailing list