2008-05-18 Philippe Brochard * src/clfswm-autodoc.lisp (produce-*-doc-*): Add a note to use the autodoc functions. 2008-05-17 Philippe Brochard * src/clfswm-nw-hooks.lisp (default-frame-nw-hook): Do not handle the ROX pinboard (ie: leave it lowered in the root window as expected). * src/clfswm-layout.lisp (tile-left-space-layout): New layout. (tile-left-layout, tile-right-layout, tile-top-layout) (tile-bottom-layout): Use all the frame space when there is only one child. * src/clfswm-internal.lisp (place-window-from-hints): Center unmanaged windows in the root screen. * src/clfswm-nw-hooks.lisp (clear-nw-hook, clear-all-nw-hooks): new functions. 2008-05-15 Philippe Brochard * src/clfswm-util.lisp (current-frame-manage-window-type): Fix a typo in managed types. * src/clfswm-internal.lisp (show-child): Always display frame info even if the frame is hidden. * src/xlib-util.lisp (resize-window): Use a better algorithme to resize windows. 2008-05-13 Philippe Brochard * src/clfswm-util.lisp (with-movement): Display frame info for all frames in current root. 2008-05-12 Philippe Brochard * src/*.lisp: Rename 'brother' frames to 'sister' frames. * src/bindings-second-mode.lisp (define-second-key #\a): New binding on 'add-default-frame'. * src/clfswm-autodoc.lisp (produce-*-doc-*-in-file): Show a message to follow the autodocumentation process. 2008-05-10 Philippe Brochard * src/clfswm-util.lisp (bind-or-jump): Bind "Tab", "Return" and "Space" to jump to a child. "B" to bind a slot on the current child. * src/bindings-second-mode.lisp: Use "Tab" instead of "Iso_Left_Tab". 2008-05-07 Philippe Brochard * src/clfswm-util.lisp (find-child-under-mouse): Take care of unmanaged (hidden) windows. * src/clfswm-internal.lisp (place-window-from-hints): Give a minimal size for windows. (with-all-windows-frames-and-parent): New function. * src/config.lisp (*default-window-width/height*): New parameters. * src/clfswm-internal.lisp (place-window-from-hints): Center windows in the screen instead of in there frame. * src/bindings-second-mode.lisp (tile-space-current-frame): New binding on C-t. * src/clfswm-layout.lisp (register-layout): Intern the once name in the right package. 2008-05-05 Philippe Brochard * doc/dot-clfswmrc: Update to follow the new clfswm way. 2008-05-03 Philippe Brochard * src/clfswm-internal.lisp (set-current-child) (adapt-child-to-parent, show-child, hide-child): Handle the case where child is not a frame or a window. * src/clfswm-util.lisp (mouse-click-to-focus-generic,mouse-focus-move/resize-generic): Check if child is a frame. * src/clfswm-internal.lisp (managed-window-p): Handle the case where frame is null. (place-frame): Check if frame and parent are frames. * src/clfswm-info.lisp (info-mode): display all frame info before leaving. * src/clfswm-second-mode.lisp (second-key-mode): display all frame info before leaving. * src/clfswm-internal.lisp (display-all-frame-info): New function. 2008-05-02 Philippe Brochard * src/tools.lisp (getenv): Implemented for ECL. (urun-prog): Implemented for ECL. * src/clfswm-util.lisp (identify-key): Use a double buffer to display text. * src/clfswm-query.lisp (query-string): Use a double buffer to display text. * src/clfswm-info.lisp (draw-info-window): Use a double buffer to display text. * src/xlib-util.lisp (clear-pixmap-buffer, copy-pixmap-buffer): New functions. 2008-05-01 Philippe Brochard * src/clfswm-info.lisp (info-mode): Add boundaries in the info mode window. * src/menu-def.lisp: New file: move all menu definition in menu-def.lisp. * src/clfswm-layout.lisp (register-layout): Use a function instead of a macro. 2008-04-30 Philippe Brochard * src/clfswm-autodoc.lisp (produce-menu-doc, (produce-menu-doc-html): New functions. (produce-doc-*): Moved to clfswm-autodoc.lisp. * src/clfswm-util.lisp (paste-selection-no-clear): Prevent to paste a child on one of its own children. (this prevent a recursive bug). (move-child-to): Rename move/copy-current-child-by to move/copy-child-to. (mouse-move-window-over-frame): New function to move the window under the mouse cursor to another frame. * src/clfswm-internal.lisp (find-child-in-parent): New function. 2008-04-29 Philippe Brochard * src/clfswm-internal.lisp (show-all-children): Display unmanaged windows only when its window parent is the current child. 2008-04-28 Philippe Brochard * src/clfswm-util.lisp (manage-current-window) (unmanage-current-window): New functions: Allow to force to manage or unmanage a window by its parent frame. * src/bindings-second-mode.lisp (#\o): binded to set-open-in-new-frame-in-parent-frame-nw-hook and (#\o :control) to set-open-in-new-frame-in-root-frame-nw-hook * src/clfswm-util.lisp (with-current-window): New macro. * src/xlib-util.lisp (move-window, resize-window): Remove uneeded exposure and enter-window handle event. * src/clfswm-util.lisp (move-frame, resize-frame): Show all children for the current child after the move/resize. 2008-04-27 Philippe Brochard * src/xlib-util.lisp (resize-window): Take care of window size hints. * src/clfswm-util.lisp (mouse-focus-move/resize-generic): Allow to move/resize unmanaged windows. * src/xlib-util.lisp (move-window, resize-window): New functions. 2008-04-25 Philippe Brochard * src/clfswm-util.lisp (current-frame-manage-window-type): Let the user choose what window type the current frame must handle. (display-current-window-info): New function. (current-frame-manage-all-window-type) (current-frame-manage-only-normal-window-type) (current-frame-manage-no-window-type): New functions. * src/clfswm-internal.lisp (managed-window-p): New function. * src/package.lisp (frame): Managed type: new frame parameter. This allow to choose what window type a frame must handle. * src/*.lisp: Rename all 'father' occurrences to 'parent'. * src/clfswm-nw-hooks.lisp (open-in-new-frame-in-parent-frame-nw-hook): New new window hook. * src/clfswm-util.lisp (adapt-current-frame-to-window-hints): New function. * src/tools.lisp (ensure-printable): Return always a string even with a null string. 2008-04-24 Philippe Brochard * src/config.lisp (*default-nw-hook*): New variable to change the default new window hook. 2008-04-22 Philippe Brochard * clfswm.asd (clfswm): Add a dependency from clfswm-second-mode.lisp to clfswm.lisp. * src/clfswm-util.lisp (identify-key): Show the documentation for the function bound on a key. (with-movement): Move with-movement, current-frame-fill/pack/resize-* from bindings-second-mode.lisp to clfswm-util.lisp. * src/clfswm-menu.lisp: New menu system that let user change keys or functions associated to keys. 2008-04-18 Philippe Brochard * src/clfswm-internal.lisp (show-all-children): Display-child is the first child by default. Solve a bug with father-p. 2008-04-17 Philippe Brochard * src/clfswm-internal.lisp (add-frame): Add frame return the created frame. (show-all-children): Move the size computation outside the show-child part. * src/bindings-second-mode.lisp (with-movement): Redisplay only the current child. * src/clfswm-util.lisp (mouse-click-to-focus-generic): Redisplay only the current child. * src/clfswm-internal.lisp (show-all-children): New display-child parameter to display only the desired child and its children. (select-next/previous-child): Only display the current child. 2008-04-14 Philippe Brochard * src/clfswm.lisp (init-display): Move the default frame creation on the default init hook. * src/clfswm-keys.lisp (define-ungrab/grab): Handle all keysyms in the main mode (for example: "1" on an azerty keyboard). 2008-04-13 Philippe Brochard * src/clfswm-keys.lisp (find-key-from-code): Better handle of keysyms. Revert to old grabbing method for the main mode. 2008-04-12 Philippe Brochard * src/clfswm.lisp (init-display): Add key handling on no focus window and on frame windows. 2008-04-11 Philippe Brochard * src/clfswm.lisp (main): Keyboard handle strategie change: Grab all keys by default and replay just what is needed. No change for the second mode. * src/clfswm-keys.lisp: remove grab/ungrab main keys. (find-key-from-code): Test for shift and not shift presence. 2008-04-09 Philippe Brochard * src/clfswm-internal.lisp (switch-to-root-frame): show later - new key parameter to have less flickering. 2008-04-07 Philippe Brochard * src/bindings-second-mode.lisp (frame-layout-once-menu): Set the layout only one time and revert to no-layout to freely handle frames. * src/clfswm-nw-hooks.lisp (open-in-new-frame-in-root-frame-nw-hook): Tile layout with spaces with new created window. * src/clfswm-layout.lisp (register-layout): Now register automatically a once layout to set the layout only one time and revert to no-layout to freely handle frames. 2008-04-05 Philippe Brochard * src/clfswm-nw-hooks.lisp (leave-focus-frame-nw-hook): New nw-hook: Open the next window in the current frame and leave the focus to the current child. 2008-04-04 Philippe Brochard * src/bindings-second-mode.lisp: Add keys definitions to bind-or-jump in the second mode. * src/clfswm-util.lisp (bind-or-jump): remove the auto-defining macro for bind-or-jump-(1|2|3...). * src/clfswm-keys.lisp (define-define-key/mouse): Allow additional arguments to function. This allow to do things like: (define-main-key (key) 'my-function 10 20 'foo) -> 10 20 and 'foo are passed to my-function on key press. 2008-04-03 Philippe Brochard * src/clfswm-util.lisp (bind-or-jump): New (great) function. 2008-04-02 Philippe Brochard * src/clfswm-internal.lisp (child-fullname): New function * src/clfswm-info.lisp (info-mode-menu): Add an explicit optional docstring in info-mode-menu. An item can be '((key function) (key function)) or with docstring '((key function "documentation 1") (key function "bla bla") (key function)) * src/tools.lisp (ensure-n-elems): New function. * src/bindings-second-mode.lisp: Bind Alt+mouse-1/3 to move or resize a frame or the window's father. * src/clfswm.lisp (init-display): Remove tile-space-layout by default on the root frame. * src/clfswm-util.lisp (move/resize-frame): Add standard event hooks handlers (map-request, configure-notify...) * src/clfswm-internal.lisp (adapt-child-to-father): Limit minimal child size to 1x1. 2008-04-01 Philippe Brochard * src/bindings.lisp: Bind Alt+mouse-1/3 to move or resize a frame or the window's father. * src/clfswm-util.lisp (mouse-click-to-focus-generic): Stop button event only if there is a geometry change. (mouse-focus-move/resize-generic): Generic function to move or resize a frame or a window father frame. 2008-04-01 Philippe Brochard * src/clfswm-internal.lisp (show-all-children): Return t if there is a geometry change. 2008-03-30 Philippe Brochard * src/bindings.lisp (Up/Down): Swap select previous/next level. * src/bindings-second-mode.lisp (Up/Down): Swap select previous/next level. * src/clfswm.lisp (init-display): Create a default frame in the root frame. * src/clfswm-internal.lisp (place-frame): Place frame from real (pixel) coordinates. (with-all-*): Reverse the child list to manage the first child last (like in show-all-children). * src/config.lisp (*create-frame-on-root*): New variable: Create a new frame on the root window only if true. * src/clfswm-util.lisp (mouse-click-to-focus-generic): Create a new frame on the root window only if *create-frame-on-root* is true. * src/bindings-second-mode.lisp (sm-mouse-click-to-focus-generic): Create a new frame on the root window. 2008-03-29 Philippe Brochard * src/bindings-second-mode.lisp (sm-mouse-click-to-focus-generic): Focus, move and resize the current child (even if it's a window). 2008-03-28 Philippe Brochard * src/clfswm-util.lisp (mouse-click-to-focus-and-move) (mouse-click-to-focus-and-resize): New functions. * src/clfswm-internal.lisp (*-fl->px): Convert float coordinates to pixel. (*-px->fl): Convert pixel coordinates to float. * src/tools.lisp (call-hook): Move call-hook to tools.lisp. 2008-03-27 Philippe Brochard * src/clfswm-layout.lisp (no-layout): Use :first-only to raise only the first child. * src/clfswm-internal.lisp (hide-all): Split hide-all-children in hide-all and hide-all-children. (raise-if-needed): New function. (show-child): Use a first-p parameter to raise windows only when they are first child. 2008-03-26 Philippe Brochard * src/clfswm-internal.lisp (select-next/previous-level): Don't use show-all-children -> less flickering. 2008-03-25 Philippe Brochard * src/clfswm-info.lisp (keys-from-list): new function. * src/*: rename 'childs' in 'children'. * src/*: rename 'group' in 'frame'. 2008-03-22 Philippe Brochard * src/clfswm-pack.lisp (explode-group/explode-current-group): new functions. 2008-03-21 Philippe Brochard * src/clfswm-pack.lisp: Pack, Fill, Resize functions. 2008-03-16 Philippe Brochard * src/clfswm-nw-hooks.lisp: Register system for new window hooks. Bind control+o to open the next window in a new group in the root group (as open in next window in a new workspace in 0801 version). 2008-03-15 Philippe Brochard * src/clfswm-util.lisp (show/hide-all-groups-info/key): Show/hide all groups info window. 2008-03-14 Philippe Brochard * bindings-second-mode.lisp ("ISO_Left_Tab"): Use ISO_Left_Tab instead of Tab for select-previous-child. 2008-03-13 Philippe Brochard * clfswm-util.lisp (force-window-in-group/force-window-center-in-group): new functions. 2008-03-11 Philippe Brochard * clfswm-util.lisp (identify-key): Display the documentation associated to keys when identifying a key. 2008-03-10 Xavier Maillard * contrib/clfswm: Complete rewrite of the script. Detect error and act accordingly. Add command line arguments to configure the script execution. User can now choose different common lisp implementation (clisp and sbcl only), choose where to store the dumped image, where to find clfswm source. 2008-03-09 Philippe Brochard * clfswm-internal.lisp (process-new-window): Beginning of new window hook: each group have a hook to tell what he wants to do with the new created window. 2008-03-08 Xavier Maillard * contrib/clfswm: New script. Dump a CLISP image of CLFSWM then call the resulting executable. * clfswm.lisp (read-conf-file): Check for the user config file in XDG_CONFIG_HOME *first*. Freedesktop.org standards should be prefered whenever possible. 2008-02-27 Philippe Brochard * clfswm-layout.lisp (*-layout): Add an optional raise-p parameter in each layout. 2008-02-26 Philippe Brochard * clfswm-util.lisp (copy/cut-current-child): Does not affect the root group. (copy/move-current-child-by-name/number): new functions (focus-group-by-name/number): new functions (delete-group-by-name/number): new functions 2008-02-24 Philippe Brochard * ************************************************************ * *: Major update - No more reference to workspaces. The main * structure is a tree of groups or application windows. * * ************************************************************ * 2008-02-07 Philippe Brochard * clfswm.lisp (read-conf-file): Read configuration in $HOME/.clfswmrc or in /etc/clfswmrc or in $XDG_CONFIG_HOME/clfswm/clfswmrc. (xdg-config-home): Return the content of $XDG-CONFIG-HOME (default to $HOME/.config/). 2008-01-18 Philippe Brochard * clfswm-internal.lisp (show-all-group): Use *root* and *root-gc* by default. 2008-01-03 Philippe Brochard * clfswm-internal.lisp (find-window-group): New function. * clfswm*: Change to make clfswm run with clisp/new-clx. 2008-01-01 Philippe Brochard * clfswm-util.lisp (query-show-paren): Add show parent matching in query string. (query-string): Bind control+k to delete end of line. * clfswm-second-mode.lisp (draw-second-mode-window): Display the action on mouse motion in second mode. * clfswm.lisp (handle-exposure): Redisplay groups on exposure event but do not clear the root window. (handle-configure-request): Adjust unmanaged window from there request. * clfswm-internal.lisp (process-new-window): Adjust new window with the specified hints (max/min/base width/height). 2007-12-31 Philippe Brochard * clfswm.lisp (handle-configure-request): Send an Configuration Notify event. This solve a bug with xterm and rxvt who takes some times to be mapped. Now there is no delay. * bindings-second-mode.lisp (define-shell): Run programs after living the second mode. 2007-12-30 Philippe Brochard * clfswm-internal.lisp (process-new-window): Do not crop transient window to group size. (adapt-window-to-group): Do not crop transient window to group size. * clfswm.lisp (handle-configure-request): Adapt just the window to its group and don't take care of the configure request. Remove the bug with the Gimp outside the group and speed up the window manipulation. (handle-exposure): Remove show-all-group on exposure event -> Speed up. 2007-12-29 Philippe Brochard * clfswm-util.lisp (circulate-group-up-copy-window) (circulate-group-down-copy-window) (circulate-workspace-up-copy-group) (circulate-workspace-down-copy-group): Prevent the copy of the same window in the same workspace. * bindings-second-mode.lisp (release-copy-selected-window) (release-copy-selected-group): Prevent the copy of the same window in the same workspace. * clfswm-pager.lisp (generic-pager-move-window-on-previous-line) (generic-pager-move-window-on-next-line): Remove the copy property. (generic-pager-move-group-on-next-workspace) (generic-pager-move-group-on-previous-workspace): Prevent the copy of the same window in the same workspace. * bindings-pager.lisp (mouse-pager-copy-selected-window-release) (mouse-pager-copy-selected-group-release): Prevent the copy of the same window in the same workspace. * tools.lisp (setf/=): new macro to set a variable only when necessary. * clfswm-internal.lisp (adapt-window-to-group): use set/= to set x, y... only when necessary. 2007-12-28 Philippe Brochard * clfswm.lisp (handle-configure-notify, *configure-notify-hook*): new function and hook: force windows to stay in its group (solve a bug with the Gimp). 2007-12-25 Philippe Brochard * bindings-second-mode.lisp (mouse-motion): use hide-group to have less flickering when moving/resizing groups. * clfswm-internal.lisp (hide-group): new function. (show-all-group): clear-all: new parameter. 2007-12-22 Philippe Brochard * clfswm-keys.lisp (define-define-key): undefine-*-multi-name: new macro. * clfswm*: Color change for the pager. Typo or better description in bindings definitions. Define bindings for a qwerty keyboard by default. dot-clfswmrc show examples to switch to an azerty keyboard. License change to GPL v3. * config.lisp: new file - group all globals variables in this file. 2007-08-26 Philippe Brochard * xlib-util.lisp (hide-window): Remove structure-notivy events when hidding a window. 2007-05-16 Philippe Brochard * package.lisp (*sm-property-notify-hook*): Readded property-notify-hook in second mode. 2007-05-15 Philippe Brochard * clfswm-keys.lisp (produce-doc-html): Better clean up for strings. 2007-05-13 Philippe Brochard * clfswm-pack.lisp (tile-current-workspace-to/right/left/top/bottom): Tile the current workspace with the current window on one side and others on the other (this emulate the larswm, dwm, wmii way). See the default configuration file to enable this mode by default. * clfswm-pager.lisp (pager-tile-current-workspace-to): idem for the pager. 2007-05-12 Philippe Brochard * clfswm-pager.lisp (pager-draw-window-in-group): Add ensure-printable to print windows name even with non-ascii characters. 2007-05-11 Philippe Brochard * clfswm-pager.lisp (pager-explode-current-group): Create a new group for each window in group. (pager-implode-current-group): Move all windows in workspace to one group and remove other groups. * clfswm-pack.lisp (explode-group): Create a new group for each window in group. (implode-group): Move all windows in workspace to one group and remove other groups. * clfswm-util.lisp (identify-key): Remove local configuration variables and made them available for configuration from package.lisp. (query-string): idem. 2007-04-29 Philippe Brochard * netwm-util.lisp: Start of NetWM compliance. Add a Netwm client list gestion. 2007-04-28 Philippe Brochard * clfswm-internal.lisp (create-group-on-request): open a new group only when the current group is not empty. * bindings-second-mode.lisp (define-second-key-#\o-control): Fix a bug with null workspace. * clfswm-pager.lisp (pager-handle-event): Add a hook system. This hooks can be changed in the user configuration file. * package.lisp: All colors and font variables are set in package.lisp and can be configured in the user configuration file. Note: If you have configured some less ugly colors (esp. for the pager) don't hesitate to let me know :) * clfswm-second-mode.lisp (sm-handle-event): Add a hook system. This hooks can be changed in the user configuration file. * clfswm.lisp (handle-event): Add a hook system. This hooks can be changed in the user configuration file (~/.clfswmrc) 2007-04-25 Philippe Brochard * clfswm-util.lisp (stop-all-pending-actions): new function: reset arrow action, open next window in new workspace/group. * bindings.lisp (stop-all-pending-actions): new binding. (open-next-window-in-new-group-once): Open the next windows in a new group (only once) or open all new windows in a new group (like others windows managers). 2007-04-22 Philippe Brochard * clfswm.lisp (read-conf-file): New function to read a lisp configuration file at startup. (focus-group-under-mouse): Check if group isn't the current group ( prevent a bug with unclutter ). 2007-03-02 Philippe Brochard * bindings.lisp (run-program-from-query-string): A program can be launch from a input query window. 2007-03-01 Philippe Brochard * clfswm-info.lisp: Fix a bug with banish pointer in info mode. 2007-02-28 Philippe Brochard * clfswm.lisp (process-new-window): One can now open the next window in a workspace called by its number. * clfswm-util.lisp (query-font-string): Minimal editing capabilities. (eval-from-string): And an REPL in the window manager... :) 2007-02-26 Philippe Brochard * clfswm.lisp (process-new-window): One can now open the next window in a new workspace or a new group. * clfswm-pager.lisp (pager-mode): Display the next arrow action with the hidden windows. * clfswm.lisp (second-key-mode): Display the current workspace number and the next arrow action in the state window. * clfswm-pager.lisp (pager-mode): Hide all windows before leaving the pager mode and then redisplay only the current workspace. 2007-02-25 Philippe Brochard * clfswm.lisp (add-workspace): Workspaces are now numbered. So they can be focused with a keypress, sorted or renumbered. 2007-02-24 Philippe Brochard * clfswm-pager.lisp (pager-mode): Remove multiple silly pager-draw-display. This prevent a lot of flickering in the pager. * clfswm.lisp: Remove all display-force-output and replace them with only one display-finish-output in the event loop. 2006-11-06 Philippe Brochard * clfswm-pager.lisp (pager-center-group): New function - center a group at the middle of the screen. * clfswm-pack.lisp (center-group): New function - center a group at the middle of the screen. * clfswm.lisp (show-group): Add a cross line under the group. (show-group): Group are showned even if fullscreened. (init-display): Add an exposure event on the root window. 2006-11-05 Philippe Brochard * package.lisp (*default-group*): Default group is the same size of a fullscreened group. * bindings*: Use shift to move, control+shift to copy. * *.lisp: Add comments for configuration or alternatives. So grep for CONFIG to see where you can configure clfswm. And grep for Alternative to use some commented code. * clfswm.lisp (second-key-mode): Use a single window to show the second mode. See for alternatives at the end of this file. 2006-11-03 Philippe Brochard * clfswm-keys.lisp (define-define-key/mouse): Factorisation in a macro of key and mouse definitions. (define-define-key/mouse): Use state instead of modifiers list this fix a bug when the modifiers list is not in the rigth order. * clfswm.lisp (second-key-mode): Add a colored border in second mode. 2006-11-02 Philippe Brochard * clfswm-info.lisp (info-mode): Add an info mode. 2006-11-01 Philippe Brochard * clfswm.lisp (process-new-window): Change border size for transient windows. (show-all-windows-in-workspace): Unhide all windows even when the current group is in fullscreen mode. 2006-10-26 Philippe Brochard * clfswm-util.lisp (identify-key): Add an exposure handle-event to redisplay the identify window after a terminal switch. * clfswm-pager.lisp (pager-mode): Add an exposure handle-event to redisplay the pager after a terminal switch. 2006-10-24 Philippe Brochard * clfswm-util.lisp (identify-key): Add a window to display the keys to identify on screen. * bindings.lisp, bindings-pager.lisp: Define same keys to move/copy groups/windows in second mode and in pager. * clfswm.lisp (handle-event*): Same version in all clfswm (fix some drawing lags). (show-all-windows-in-workspace): unhide window before adapting it to group. 2006-10-23 Philippe Brochard * clfswm.lisp (handle-event): Revert to an older version. 2006-10-18 Philippe Brochard * clfswm-util.lisp (force-window-in-group) (force-window-center-in-group): New functions for transient windows. * clfswm-pager.lisp (pager-remove-current-workspace/group): bugfix: hide all windows before removing group or workspace. 2006-10-17 Philippe Brochard * bindings-pager.lisp (mouse-pager-move-selected-group) (mouse-pager-copy-selected-group) (mouse-pager-move-selected-window) (mouse-pager-copy-selected-window, mouse-pager-rotate-window-up) (mouse-pager-rotate-window-down): New functions to have mouse in pager mode. * clfswm-pager.lisp (pager-swap-window) (pager-copy-group-on-next/previous-workspace) (pager-copy-window-on-next/previous-line): New functions 2006-10-15 Philippe Brochard * clfswm-pager.lisp (pager-move-window-on-next/previous-line, (pager-move-group-on-next/previous-workspace): new functions. * clfswm-pack.lisp (resize-half-x-x-current-group): resize group to its half size (new functions). 2006-10-11 Philippe Brochard * clfswm-pager.lisp: workspaces, groups and windows can now be selectionned with the keyboard or the mouse. 2006-10-09 Philippe Brochard * clfswm-pager.lisp (pager-select-workspace-right/left): workspaces can now be selectionned with the keyboard. 2006-10-08 Philippe Brochard * clfswm-keys.lisp (undefine-main-key, undefine-second-key, undefine-mouse-action): new function to remove a previous defined key or mouse combination. 2006-10-07 Philippe Brochard * clfswm.lisp (main): Check for access error in init-display. * clfswm-keys.lisp (define-ungrab/grab): check for keysym and keycode before grabbing. * bindings.lisp: Remove nlambda and use defun to keep the function documentation with clisp. (define-shell): new macro to define shell command for the second mode. 2006-10-06 Philippe Brochard * clfswm-keys.lisp (define-ungrab/grab): use a cond instead of a boggus typecase. 2006-10-05 Philippe Brochard * bindings.lisp (accept-motion): Move group bugfix in upper mouse workspace circulation. * clfswm-util.lisp (absorb-orphan-window): new function. * clfswm-keys.lisp: Keysyms support. 2006-10-02 Philippe Brochard * clfswm.lisp (show-group): Use one gc for all groups and not one per group. 2006-10-01 Philippe Brochard * bindings.lisp (define-second-key (#\l :mod-1)): fix a typo. * clfswm.lisp (adapt-window-to-group): Adapt only windows with width and height outside group. 2006-09-28 Philippe Brochard * clfswm.lisp: First public release.