[clfswm-cvs] [clfswm-git]CLFSWM - A(nother) Common Lisp FullScreen Window Manager annotated tag R-1106 created. R-1106

Philippe Brochard pbrochard at common-lisp.net
Wed Jun 8 20:25:53 UTC 2011


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 annotated tag, R-1106 has been created
        at  4689def5ccbb76bd9d1864797e89737e79c11450 (tag)
   tagging  59cd35db78c29e540c7b4af221c0c42662d231af (commit)
 tagged by  Philippe Brochard
        on  Wed Jun 8 22:25:15 2011 +0200

- Log -----------------------------------------------------------------
1106 release

Desmond O. Chang (6):
      XDG_CONFIG_HOME should be $HOME/.config by default.
      src/clfswm-util.lisp (run-or-raise): New function (thanks to Desmond O. Chang).
      src/keysyms.lisp: Add extended keysyms from stumpwm.
      No need to create the functions every time.
      src/clfswm.lisp (main): Use ASDF:SYSTEM-SOURCE-DIRECTORY instead of *LOAD-TRUENAME*. *LOAD-TRUENAME* is only bound during a call to LOAD. If one eval CLFSWM:MAIN in repl, BASE-DIR will be an empty string. Use ASDF:SYSTEM-SOURCE-DIRECTORY to fix it.
      contrib/volume-mode.lisp: Add a volume mode inspired by the emms volume package. and its alsa mixer interface

Krzysztof Drewniak (1):
      Fix a README spelling error

Philippe Brochard (401):
      first commit
      first commit
      first commit
      first commit
      first commit
      remove all
      Merge git+ssh://hocwp@repo.or.cz/srv/git/clfswm
      A test of new git repository
      remove all again
      populating
      Merge git+ssh://hocwp@repo.or.cz/srv/git/clfswm
      populating
      populating
      populating
      populating
      test of svn and git
      test of svn and git
      adding .gitignore
      Unmanaged windows are now allowed to be moved or resized.
      resize-window: Take care of window size hints.
      manage-current-window, unmanage-current-window: New functions: Allow to force to manage or unmanage a window by its parent frame.
      Display unmanaged windows only when its window parent is the current child.
      paste-selection-no-clear: Prevent to paste a child on one of its own children. (this prevent a recursive bug).
      mouse-move-window-over-frame: New function to move the window under the mouse cursor to another frame.
      produce-doc-*: Moved to clfswm-autodoc.lisp. Produce-menu-doc, produce-menu-doc-html: New functions.
      update the TODO file
      update the TODO file
      menu-def.lisp: New file
      Add boundaries in the info mode window.
      Info mode: Add boundaries with mouse wheel movement
      Display all texts with a double buffering method
      -m
      Documentation update
      display all frame info before leaving the second mode or the info mode.
      For different mouse actions: Ensure that the current child is a frame.
      set-current-child, adapt-child-to-parent, show-child, hide-child): Handle the case where child is not a frame or a window.
      Version update
      Update the dot-clfswm. New bindings to frame-pack/fill/resize-menu
      README update
      Give a minimal size for windows. Center windows in the screen instead of in there frame. tile-space-current-frame bound on C-t.
      Autodoc update
      Take care of	unmanaged (hidden) windows.
      Use 'Tab' instead of 'Iso_Left_Tab'. bind-or-jump: Bind 'Tab', 'Return' and 'Space' to jump to a child. 'B' to bind a slot on the current child.
      Show a message to follow the autodocumentation process. Second mode #\a: New	binding on 'add-default-frame'.
      In *.lisp: Rename 'brother' frames to 'sister' frames.
      with-movement: Display frame info for all frames in current root.
      resize-window: Use a better algorithme to resize windows.
      show-child: Always display frame info even if the frame is hidden.
      current-frame-manage-window-type: Fix a typo in managed types.
      place-window-from-hints: Center unmanaged windows in the root screen. clear-nw-hook, clear-all-nw-hooks: new functions.
      leave-focus-frame-nw-hook: remove an ignore declaration
      (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.
      default-frame-nw-hook: Do not handle the ROX pinboard (ie: leave it lowered in the root window as expected).
      Autodoc: produce-*-doc-*: Add a note to use the autodoc functions.
      More dot-clfswmrc examples
      remove-child-in-frame: Destroy the frame window for the removed child and its children.
      remove-child-in-frame: better algorithm to remove window and gc frame
      rename-current-child: Do not display the frame info for a window.
      hide/show-frame-window: new function and menu item.
      hide-current-child, unhide-a-child, unhide-all-children: New functions. info-mode-menu: Handle symbols and functions.
      (TODO update) hide-current-child, unhide-a-child, unhide-all-children: New functions.
      unhide-a-child-from-all-frames: Unhide a child from a choice in all frames with hidden children. info-mode-menu: Handle separators.
      have-to-present-windows, have-to-present-all-windows: New functions to have an MaxOS expose like on mouse click in screen corner. Info-mode: Page_Down, Page_Up: Add boundaries.
      frame-lower-child, frame-raise-child: New functions to raise/lower a child in its frame.
      mouse-click-to-focus-and-move-window, mouse-click-to-focus-and-resize-window: Stop button event. This prevent a keyboard/pointer freeze.
      leave-focus-frame-nw-hook: Adapt behaviour to the new raise/lower property.
      leave-focus-frame-nw-hook: Call clear-nw-hook before the rest of the hook.
      Add raise/lower keys on second mode and in a menu entry
      show-all-children: Always raise all displayed children. Remove all references to raise-p.
      raise-p-list, show-all-children: Raise only viewable children.
      focus-child: Algorithm change to raise only the selected child.
      (show-all-children): Compute geometry and selection first and then show only necessary children. (show-child): remove unneeded display-p parameter. (get-fullscreen-size): Place the frame border outside the screen (this prevent the loose of 2 pixels per directions :)
      Compress motion events in event loop
      display-current-window-info: Display the window id. have-to-present-virtual-keyboard: Add a virtual keyboard corner	(top right by default). By default 'xvkbd' is used.
      place maxsized and fullscreened windows in the center of the screen
      Massive update: Fast layout switch, switch to last child, color nearly everywhere (Help, keys...), simple way for corners configuration, auto-doc on corners, show configuration variables
      Different focus policy by frame. A possible GIMP layout
      Factorize layouts in menu. Allow comments in menu. Main window layout for top, bottom and left direction
      src/clfswm-layout.lisp (set-gimp-layout): Change the layout to main-window-right-layout. Change the keybinding for (shift)alt+tab to not select windows in the main window lisst. Bind F8 to add a window in the main window list. Bind F9 to remove a window in the main window list. Change the focus policy to :sloppy.
      Add a specific GIMP layout menu. (help-on-gimp-layout): Describe how to use the GIMP layout.
      main, main-unprotected: Handle error in a superior main function. Now CLFSWM can't break the X session. It just reinitialize the display and run a new main loop. reload-clfswm: New function to reload CLFSWM. Rename quit-clfswm to exit-clfswm.
      Reset-clfswm: new function
      handle-enter-notify: Add a sloppy strict focus policy -> Sloppy focus only for windows in the current frame.
      main-unprotected: Exit clfswm on init error (ie: when another window manager is running).
      handle-enter-notify: sloppy-select mode. Select a child and its parents on mouse over. Add a menu entry to set a focus policy for all frames.
      Handle the case where cursor	is nil. (workaround on some CLX implementation). Change key binding for the CLFSWM menu	entry. Bind 't' to tile-current-frame.
      Documentation update
      Documentation update
      show-all-children: Do not raise a child by default => far less flickering.
      show-all-children: Do not raise a child by default => far less flickering. (Changelog update)
      named-frame-nw-hook/numbered-frame-nw-hook: open the next window in a named/numbered frame.
      Documentation update
      clfswm.asd update
      ensure-unique-name/number: New function and menu entry.
      Documentation update
      dot-clfswmrc update
      TODO update
      TODO update
      jump-to-slot: Prevent to jump on a deleted child.
      jump-to-slot: Prevent to jump on a deleted child. TODO update
      my-character->keysyms: Use a macro to avoid warning with clisp/new-clx.
      display-frame-info: Use configurable	colors and fix a bug with background.
      display-frame-info: Set window background when displaying info.
      query-string: Do not ungrab keyboard if it's already grabbed.
      show-standard-menu: Display the standard menu from the 'update-menus' command.
      menu-def.lisp: Use a menu instead of a function for the standard menu.
      open-menu: Remember parent menu to undo menu opening.
      src/clfswm-keys.lisp: Add a default modifiers list before bindings keys. This allow the use of Numlock or Caps_Lock while using clfswm.
      Remove a with-numlock not yet defined
      Use the *binding-hook* to create main/second/info keys and mouse bindings. with-capslock, without-capslock, with-numlock, without-cnumlock: New functions.
      TODO and configuration file update
      remove-hook: New function. TODO update. Fix a typo in without-numlock
      unalias-modifiers: Convert a modifier alias in a real modifier. For example: :alt is :mod-1, :numlock is :mod-2...
      Rename sister frame to brother frame. Doc update
      Add children navigation menu in the movement menu (select next/previous child/brother/level). - clisp/new-clx is supported with a least the 2.48 version (not yet released)
      wait-no-key-or-button-press, wait-a-key-or-button-press: Check buttons press/release correctly
      Add a needed argument in funcall-button-from-code
      get-color: Allocate colors only once -> fix a segfault with clisp/new-clx.
      handle-map-request: Add a fix to manage correctly fullscreen windows (SDL particularly).
      handle-map-request: Remove unused override-redirect-p argument
      Handle fullscreen windows the icewm way
      null-size-window-p): Better check of null sized windows.
      info-mode: Ensure integer windows size. Use *default-font-string* for all font-string.
      Test username
      run-program-from-query-string: Launch command only with a return validation.
      Begining of circulate-mode
      circulate-mode: Optimisation in window redraw.
      sm-handle-motion-notify: Optimisation when drawing second mode window.
      src/*.lisp (*): Use map-window instead of xlib:map-window. So calls xlib:display-finish-output on each map-request. So speed up	the window display.
      reorder-child, reorder-brother: Reinitialise on circulate type change child to brother or brother to child.
      Add support for Clozure Common Lisp (CCL)
      maximize-layout: New layout: Maximize windows and frames in there parent frame.
      frame-toggle-maximize: New function: Maximize/Unmaximize the current frame in its parent frame.
      frame-toggle-maximize: Redisplay only the parent frame of the  current frame.
      reorder-child, reorder-brother: Handle empty frames.
      reorder-brother: Redisplay only the parent frame of the current child.
      update documentation
      clfswm.asd: Dependency fix for clfswm-generic-mode.
      reorder-brother: Handle root-frame correctly.
      info-mode: Optimization in loop function. *.lisp: Handle motion with a default modifier.
      reorder-brother: Ensure that the parent is a frame.
      test
      src/clfswm-placement.lisp: New file. Allow to place info windows or query windows on an arbitrary place. Allow to bannish the pointer on an arbitrary place.
      package.lisp: fixe default placements
      fixe TODO and bannish pointer placement
      query-enter-function: Assign font before width and height calculation.
      *-child-placement: Adjust coordinates to one pixel in the current child.
      get-fullscreen-size: Adjust default fullscreen sizes.
      draw-circulate-mode-window: Ensure that all characters are printable.
      clfswm-circulate-mode: Adjust circulate-mode-placement
      get-fullscreen-size, *-child-placement: One pixel adjustment (again).
      TODO update
      Minor documentation update
      contrib/mpd.lisp: New file to handle the Music Player Daemon (MPD)
      clfswm-info.lisp: Use a standard menu for the help-menu.
      contrib/mpd.lisp: Use a standard menu.
      TODO update
      contrib/keyb_fr.lisp: New file to handle an azerty keyboard.
      set-default-second-keys: Bind 'o' on set-open-in-new-frame-in-parent-frame-nw-hook.
      set-no-layout-remember-size): New layout: Maximize windows in there frame - Leave frames to there actual size.
      contrib/xmms.lisp: New file to handle the xmms player.
      contrib/cd-player.lisp: New file to handle the CD player.
      one-column-layout, one-line-layout: New layouts. tile-layout, tile-horizontal-layout: Keep child order and don't make unnecessary child movement.
      tile-layout, tile-horizontal-layout:	Keep child order and don't make unnecessary child movement. One-column-layout, One-line-layout: New layouts.
      contrib/mpd.lisp (start-gmpc): Add gmpc in the mpd menu.
      TODO update
      Simplification of Escape key to close/kill/remove the focus window and unhide all windows.
      TODO update. Add a read-conf-file-p parameter to prevent reading the configuration file.
      Add a Suspend/Reboot/Halt menu in contrib
      reboot-halt.lisp: Remove test code
      Begining of mouse support in	info mode.
      Add mouse support in info mode. clfswm is now usable only with the mouse
      save-configuration-variables): New function to save all configuration variables in clfswmrc.
      clfswm.lisp: fixe configuration file name
      Configuration menu: New menu to configure all clfswm variables while clfswm is running.
      Add an information about configuration variables
      TODO update. Change key order in configuration menu
      Begin with #\a key in the configuration menu
      Change save key in configuration menu
      Prevent errors while in configuration menu
      Prevent to add a newline on each configuration variables save
      src/clfswm.lisp (main): Add an alternate configuration filename parameter. load.lisp: Add a debuging code example.
      Replace Menu* keys with Alt-F10* in bindings*.lisp
      Add a loop-hook parameter and a loop timeout.
      contrib/reboot-halt.lisp: Do nothing on the first menu entry
      -m
      -m
      run-other-window-manager: Add the ability to launch an other window manager and to return to clfswm.
      Add a configure/make procedure to build clfswm
      identify-key, move-window, resize-window, wait-mouse-button-release: Add a timeout in xlib:process-event.
      clfswm-util.lisp (mouse-click-to-focus-generic): Use find-child-under-mouse instead of the window passed by xlib:process-event.
      clfswm-util.lisp (delete-focus-window, destroy-focus-window): Remove child in parent frame before	stopping it.
      src/clfswm-util.lisp (mouse-click-to-focus-generic): Redisplay all children in *current-root* after moving/resizing a frame.
      src/clfswm-internal.lisp (remove-child-in-frame): Do not destroy the frame window and the frame gc. Close a very annoying bug when cuting/pasting a frame or moving a child over frames with the mouse.
      bindings-second-mode.lisp (set-default-second-mouse): Use mouse-move-child-over-frame instead of mouse-move-window-over-frame
      src/clfswm-internal.lisp (delete-child-and-children-in-all-frames): New function and binding: Second mode - Control+Delete delete the current child and its children in all frames (ie: close the current child and its children).
      src/binding*.lisp: Bind control+g to escape the current action like emacs.
      src/package.lisp: Add a placement configuration group.
      src/clfswm-util.lisp (delete-current-child): Invert bindings and menu entry between delete-current-child and remove-current-child. ie: Delete a child and its children in all frames by default.
      big summer commit
      Add a clfswm server/client
      clean contrib/server/
      src/*.lisp: Replace the case to handle event with a more (tricky) lispy  method which bind a function to each keywords associated to graphics events. Remove event handler hooks as they're not needed anymore (To replace them: use closure and define-handler).
      Date copyright and version update
      Documentation update
      Documentation update
      src/clfswm-util.lisp (mouse-click-to-focus-generic): Fix an unwanted flickering with unmanaged windows.
      TODO update
      src/clfswm-internal.lisp. with-find-in-all-frames: New macro. find-parent-frame, find-frame-window, find-frame-by-name find-frame-by-number: Use with-find-in-all-frames to search in frames in the right order.
      src/xlib-util.lisp (compress-motion-notify): Use a loop instead of an event-case.
      contrib/server/key.lisp (ushell-sh): Add ccl and ecl support.
      main-loop, generic-mode: Use an xlib:event-listen before processing event with xlib:process-event. This prevent a bug with CLX threaded implementation like sbcl.
      * src/*.lisp: Use the new child-equal-p to compare children. This prevent a bug with sbcl/cmucl when the standard equal function does not work with xlib:window.  * src/clfswm-internal.lisp (child-equal-p): New predicate.
      src/clfswm-keys.lisp (define-ungrab/grab): Use all values returned by xlib:keysym->keycodes.
      src/clfswm-keys.lisp (define-ungrab/grab): Remove debug test
      src/clfswm-circulate-mode.lisp (circulate-loop-function):	Use is-a-key-pressed-p. src/xlib-util.lisp (is-a-key-pressed-p): New predicate.
      main-mode:configure-request: Raise the window only when present on the current child and focus it accordingly.
      src/clfswm.lisp (main-loop): Ensure that all events have been processed after a process-event.
      main-mode:configure-request: Do not raise fullscreened windows.
      child-member, child-remove: New predicates. src/*.lisp: Use child-member and child-remove everywhere it's	needed.
      hide-current-child: Prevent from removing the current root.
      run-other-window-manager: Update for clisp compatibility.
      src/clfswm-corner.lisp (present-clfswm-terminal): Make the clfswm terminal working even on xterm title changes.
      src/xlib-util.lisp (handle-event): use with-xlib-protect only in handle-event. Add a with-simple-restart to prevent a clisp/new-lisp infinite loop.
      src/clfswm.lisp (main-loop): Protect all xlib functions with an with-xlib-protect.
      with-xlib-protect: Add a with-simple-restart on top of body execution.
      src/clfswm.lisp (error-handler): New function do handle asynchronous errors and ignore them. (open-display): Install the new error-handler on display.
      src/clfswm-util.lisp (update-menus): Follow XDG specifications instead of the non-portable Debian update-menu.
      src/clfswm-corner.lisp (generate-present-body): New macro. (present-clfswm-terminal, present-virtual-keyboard): Use generate-present-body.
      Remove useless comment
      src/clfswm-util.lisp (update-menus): List all directories and subdirectories in /usr/share:/usr/local/share:/usr/share:/usr/local/share:/usr/share:/usr/local/share:/usr/share:/usr/local/share:/usr/share:/usr/local/share/applications.
      Add a Screensaver section in standard menu
      set-hide-unmanaged-window, set-show-unmanaged-window, set-default-hide-unmanaged-window: New functions and menu entry to hide or not unmanaged windows.
      Documentation update
      set-globally-hide-unmanaged-window, set-globally-show-unmanaged-window: New functions and menu entry.
      Documentation update
      TODO update
      contrib/clfswm: Add support to cmucl, ccl and ecl.
      contrib/clfswm: Move clfswm sources to  if there is no write permission on . So anybody can start clfswm even if there is no write permission on the source directory.
      src/clfswm-util.lisp (speed-mouse-reset, speed-mouse-left, speed-mouse-right, speed-mouse-up, speed-mouse-down, speed-mouse-undo, speed-mouse-first-history): New functions to quickly move the mouse. Implemented for the second mode.
      src/clfswm-util.lisp (speed-mouse-reset, speed-mouse-left, speed-mouse-right, speed-mouse-up, speed-mouse-down, speed-mouse-undo, speed-mouse-first-history): New functions to quickly move the mouse. Implemented for the second mode.
      src/clfswm-util.lisp (speed-mouse-right, speed-mouse-down): Use screen size instead of hardcoded test coordinates.
      src/clfswm-expose-mode.lisp: Move and rename present*-windows in a separate clfswm-expose-mode.lisp file.
      src/xlib-util.lisp (with-handle-event-symbol): Use a filled list with handle-event-fun symbols instead of inspecting clfswm internals symbols on each mode change.
      Update corners from present-windows to expose-windows-mode
      src/clfswm-expose-mode.lisp (expose-windows-mode, expose-all-windows-mode): Use a generic mode. src/clfswm-internal.lisp (child-position): New function.
      src/clfswm-expose-mode.lisp (expose-mode-display-accel-windows): New functions. Add a window on each child in the expose mode to quickly select them.
      Fixe a double gcontext free
      configure: Use the Xavier Maillard clfswm script in contrib to build an executable in the standard way.
      Upgrade to asdf 2.0
      TODO update. Documentation update.
      TODO update
      src/clfswm-expose-mode.lisp (expose-create-window): Show window title in accel window.
      src/clfswm-nw-hooks.lisp (absorb-window-nw-hook): Absorb new window hook: the frame absorb all new windows that match nw-absorb-test frame data slot.
      src/clfswm-util.lisp (bind-on-slot): Add an optional parameter to bind the current child from the configuration file.
      src/clfswm-circulate-mode.lisp (select-next-subchild): Add the possibility to circulate over subchild of the current child.
      TODO update
      Documentation update
      Circulate in subchild: show-all-children only for current frame
      src/clfswm-internal.lisp (show-all-children): Do not raise a child when its parent is hidden.
      src/clfswm-query.lisp (query-print-string): Change cursor color and show parenthesis matching with colors (on match and on errors).
      src/clfswm-query.lisp (add-in-query-string): Handle correctly the mod-5 modifier.
      * src/clfswm-util.lisp (): Add an Hello window at startup. * src/tools.lisp (process-timers): Add a timer system.
      clfswm.lisp: move display-hello-window in the *init-hook* list
      src/clfswm-util.lisp (display-hello-window): Add a timer to hide the hello window. Add Configuration variables.
      src/tools.lisp (add-timer): Add an id to identify the timer.
      Remove test functions
      src/clfswm-util.lisp (open-notify-window): Convert hello-window functions to a more generic Notify-window system.
      src/clfswm-info.lisp (show-first-aid-kit): Display the essential key binding in main and second mode.
      Documentation update
      contrib/osd.lisp: New file: OSD (On Screen Display) for presentations. src/clfswm-menu.lisp (open-menu): Modularise function.
      src/clfswm-keys.lisp (binding-substitute-modifier): Utility to change modifiers after binding definition.
      src/clfswm-internal.lisp (show-child): Show window only if not hidden.
      * src/xlib-util.lisp: Remove unnecessary xlib:display-finish-output.
      contrib/server/server.lisp: Load clfswm client code in the main program and let the user start it with a --client command line option. * src/package.lisp (*main-entrance-hook*): New hook executed after loading configuration file and before opening the display.
      TODO update
      src/clfswm-expose-mode.lisp (expose-create-window): Ensure that all characters are printable.
      FIle test
      File suppression test
      Remove uneeded files
      contrib/server: Remove uneeded files
      contrib/server: add a test file
      Add CLX as system dependency
      Add CLX as system dependency (2)
      src/clfswm-query.lisp (query-print-string): Handle long lines correctly.
      TODO update
      src/clfswm-query.lisp (query-mode-complet): New function: Handle completion in query-mode.
      src/clfswm-internal.lisp (frame-select-next-child, frame-select-previous-child): New functions and bindings. Select the next/previous child in the current frame.
      Documentation update
      load.lisp: fix typo
      src/clfswm-layout.lisp (tile-layout-ask-keep-position): New function to let the user choose to keep child position with tile layout.
      src/clfswm-layout.lisp (tile-layout, set-tile-layout): Fill blanks if needed.
      Documentation and dot-clfswmrc update
      src/clfswm-expose-mode.lisp (expose-windows-current-child-mode): New function an bindings.
      Documentation update
      src/clfswm-util.lisp (mouse-click-to-focus-generic): Do not focus the parent child when the current root is a window.
      src/clfswm-internal.lisp (set-current-root): Handle window-parent in set-current-root.
      version update
      contrib/osd.lisp: minor tweaking
      src/clfswm-expose-mode.lisp (expose-mode-display-accel-windows): Do not display the accel window for unmanaged windows.
      src/clfswm-util.lisp (find-child-under-mouse): Do not find hidden windows.
      expose-windows-generic: banish pointer on exit
      contrib/server.lisp: minor tweaking
      contrib/osd.lisp: Display doc before calling associated function
      src/clfswm-second-mode.lisp (*second-mode-leave-function*): New variable bound to a function executed (when not null) on second mode leaving.
      src/clfswm-second-mode.lisp (sm-leave-function): Do not use *second-mode-program* anymore.
      src/clfswm-second-mode.lisp (second-key-mode): Call the second mode leave function only when the generic mode was ended.
      src/xlib-util.lisp (with-xlib-protect): Force to revert to the main mode state.
      contrib/osd.lisp (display-doc): Add another method where a CLFSWM native window is used to display the key documentation.
      Documentation update
      Put load.lisp in normal mode and not documentation mode
      src/clfswm.lisp (main-mode): Raise or not unmanaged windows following request in *never-managed-window-list*.
      src/clfswm-util.lisp (mouse-focus-move/resize-generic): Take care of never managed windows to move or resize them if the raise parameter is true.
      mouse-focus-move/resize-generic: do not focus a never managed window
      *never-managed-window-list*: Structure change to be more flexible. Let the choice to focus, raise and do nothing on never managed windows.
      Better clfswm terminal identification
      src/clfswm.lisp (main-unprotected): Destroy the notify window before closing the display. Tis fix a bug when resetting/reloading clfswm.
      src/clfswm.lisp (main-unprotected): Add a close hook. And close the notify window, the virtual keyboard and the clfswm terminal by default.
      src/clfswm.lisp (main-unprotected): Create the configuration menu only once at startup.
      src/clfswm-configuration.lisp (add-all-configuration-default-value): Add a default value to configurable variables.
      src/clfswm-configuration.lisp (reset-all-config-variables): New function and menu entry.
      src/clfswm-configuration.lisp (query-conf-value): Add the ability to leave the field blank to reset the variable to its default value.
      src/clfswm-util.lisp (query-yes-or-no): New function.
      src/clfswm-internal.lisp (show-all-children): Rethink of display child order to prevent very annoying flickering.
      src/clfswm-internal.lisp (show-all-children): Perform only one recusion on the clfswm tree: calculate geometry and place child in one pass.
      TODO update
      src/xlib-util.lisp (move-window,resize-window): Add a *color-move-window* border when moving or resizing a window.
      src/clfswm-internal.lisp (show-all-children): Simplify the selection method.
      (show-all-children): add the ability to display all child from *root-frame* and hide all those who are not in *current-root*. -> remove hide-all-children when needed.
      src/clfswm-configuration.lisp (create-configuration-menu): Change the config system with a more lispy one and a less string based one: (defconfig name value group doc).
      src/clfswm-info.lisp (show-config-variable); src/clfswm-autodoc.lisp (produce-configuration-variables): Use the new defconfig method.
      src/clfswm-configuration.lisp (save-variables-in-conf-file): Save only variables with a different value than there original value.
      src/clfswm-internal.lisp (show-all-children): Hide windows not in the current root before displaying those in current root. Remove all hide-all unnecessary calls.
      src/clfswm-util.lisp (cut-current-child, remove-current-child, delete-current-child): Hide the current child before doing the action.
      src/clfswm-layout.lisp: Add a variable border size for frames and windows. contrib/volume-mode.lisp (set-default-volume-keys): Add more keybindings (up/down, right/left) to raise/lower the volume.
      src/clfswm-internal.lisp (show-all-children): Handle properly duplicated child in multipe frames.
      clfswm.asd: Change compilation order to prevent undefined	variables. src/clfswm-internal.lisp (show-child(frame)): Handle properly the show-root-frame-p parameter. src/clfswm-util.lisp (move-frame, resize-frame): Do not move or resize a frame when it's the current root.
      Copyright date update
      Documentation update
      src/clfswm-layout.lisp (set-gimp-layout): Display a notify window with the help on the GIMP layout.
      src/clfswm-autodoc.lisp (produce-all-docs): Produce a documentation for all configurable variables in CLFSWM.
      src/clfswm-autodoc.lisp (produce-conf-var-doc-html): Produce a documentation for all configurable variables in CLFSWM - HTML version.
      Fix never-managed-windows in contrib/osd.lisp
      src/clfswm-info.lisp (show-config-variable): call	produce-conf-var-doc.
      src/clfswm-internal.lisp (x-px->fl, y-px->fl): Takes care of border size.
      binding(-second-mode).lisp: minor keys update (switch-to-last-child)
      contrib/server.lisp: Use the same port variable in the server and the client
      contrib/clfswm, configure: Add a lisp binary option to choose the binary program used to build clfswm
      clfswm-query.lisp, clfswm-info.lisp: redefine keys before entering in the mode
      src/clfswm-menu.lisp (open-menu): Save info hash table keys instead of deleting newly created keys.
      src/clfswm-util.lisp (with-movement-select-next-brother, with-movement-select-previous-brother, with-movement-select-next-child): Use a simple method (do not enter in the circulate mode) to allow to circulate in all children or brothers.
      src/clfswm-pack.lisp (move-frame-constrained, resize-frame-constrained): New function. Move and resize frame with the mouse constrained by other frame brothers.
      src/clfswm-pack.lisp (resize-frame-constrained): Takes care of border size.
      * src/clfswm-pack.lisp (implode-frame, implode-current-frame): New functions. Absorb all frames subchildren in frame. Explode frame opposite.
      * src/clfswm-pack.lisp (implode-frame): Hide child before removing it
      src/clfswm-pack.lisp (move-frame-constrained, resize-frame-constrained): Use pixels instead of floating measure.
      src/clfswm-circulate-mode.lisp (select-brother-generic-spatial-move+right/left/up/down): New function to select a brother from another in a spatial move.
      src/clfswm-circulate-mode.lisp (select-brother-generic-spatial-move+right/left/up/down): New function to select a brother from another in a spatial move.
      src/clfswm-layout.lisp (update-layout-managed-children): Fix a bug by using the parent frame instead of the current child.
      src/clfswm-internal.lisp (fixe-real-size): Takes care of border size.
      src/clfswm-layout.lisp (tile-left|right|top|bottom-layout): Ask to keep children positions or not.
      src/bindings-second-mode.lisp (set-default-second-keys): select-brother-spatial-move-* binding update.
      Documentation update
      src/clfswm-layout.lisp (update-layout-managed-children-position): New function.
      src/clfswm-layout.lisp (update-layout-managed-children-position): New function.
      TODO update
      src/clfswm-nw-hooks.lisp (make-permanent-nw-hook-frame): New function. Prevent to add or delete a new window hook for this frame.
      Documentation update
      contrib/osd.lisp (funcall-button-from-code): Display osd documention for buttons and fix some redefining warnings.
      src/clfswm-util.lisp (ask-close/kill-current-window): Add an *ask-close/kill-placement* placement window variable.
      src/clfswm-util.lisp (copy-focus-window, cut-focus-window): New functions and ask-close/kill-current-window menu and bindings entry.
      src/clfswm-util.lisp (copy-focus-window, cut-focus-window): New functions and ask-close/kill-current-window menu and bindings entry.
      Documentation update
      src/clfswm-internal.lisp (show-all-children): Rectangular optimization to display only needed children.
      src/clfswm-internal.lisp (show-all-children): Remove flickering on select-next/previous-brother.
      src/clfswm-util.lisp (delete-focus-window-generic): Do not hide child before removing, so prevent a flickering.
      src/clfswm-internal.lisp (get-parent-layout): Handle correctly unmanaged windows.
      src/clfswm-internal.lisp (delete-child-and-children-in-all-frames): Show all children before deleting/destroying a windows, so prevent a flickering.
      src/clfswm-internal.lisp (get-parent-layout): Return the fullscreen size when the current root is a window.
      src/clfswm-internal.lisp (get-parent-layout): Minor fullscreen size tweaking.
      src/clfswm-util.lisp (mouse-click-to-focus-generic): Update behaviour accordingly to function specifications.
      src/clfswm-internal.lisp (display-frame-info): Remove hidden infos in frames windows.
      src/clfswm-expose-mode.lisp (define-expose-letter-keys): Add 0..1 and A..Z keys to select a child in exposé mode.
      src/clfswm-layout.lisp (inc-tile-layout-size, dec-tile-layout-size, inc-slow-tile-layout-size, dec-slow-tile-layout-size): New functions and bindings.
      src/clfswm.lisp (main-unprotected): Destroy all frames windows before closing the display (not really needed).
      Documentation update
      Version update
      src/clfswm-util.lisp (add-frame-in-parent-frame): New function and binding.
      Common-lisp.net git test
      Git on common-lisp.net test. Trac test
      Git on common-lisp.net test. Git emails test
      Git on common-lisp.net test. Git emails test
      Git on common-lisp.net test. Git emails test
      Git on common-lisp.net test. Git emails test - End
      Test of both repo.or.cz and common-lisp.net git repositories
      src/clfswm-internal.lisp (delete-child-and-children-in-all-frames): Delete or destroy children before displaying all children.
      Release 1106
      Changelog update
      src/clfswm-internal.lisp (clean-windows-in-all-frames): New function to prevent xlib error when a window is deleted.
      load.lisp: remove unprotected test case
      Finale 1106 release

Xavier Maillard (10):
      Username test
      Username test 2
      Untest
      Add a generic mode to define all other modes.
      Remove a test key
      Use generic-mode for info-mode.
      Adding generic-mode
      Add an xlib-util dependency for clfswm-generic-mode
      Transitional: revert to old circulate behaviour
      Use a generic mode for query-string

pbrochard (92):
      first commit
      first commit
      first commit
      use a default group datas
      navigation keys change to always select the current child
      Alt-tab navigate throw childs-Alt-arrow navigate throw brothers
      create-group use &rest arguments
      New contrib directory for additional user code
      Hide groups when moving by name
      add a contributed example
      Rename and renumber childs. Move query-* in a separate file
      Solve a wrong with-gcontext bug (xlib::string-concat)
      Specify the base directory in the main loop. The main loop has key parameters
      Remove all reference to pager
      Handle mouse in the main mode the same way as in the second mode. Main mouse actions are now defined in bindings.lisp
      Remove button-pess/release in window-event. They are handled another way
      Begining of mouse handling -> wheel mouse
      Check /home/phil/.config/clfswm/clfswmrc first. New clfswm script thanks to Xavier Maillard. Beginning of new window hook
      New file: clfswm-nw-hooks.lisp to store hooks on new windows
      test of git
      new git test
      Add clfswm-nw-hooks in clfswm.asd
      A git test with svn and rsync
      New git test
      another test
      Last test?
      and another one
      And this is the last
      Apply patch on contrib/clfswm
      Display the documentation associated to keys when identifying a key.
      Fix a glitch in clfswm-keys.lisp - Thanks Xavier
      New doc directory. Move asdf.lisp to contrib/
      Adding doc directory
      Check for Keysym+Shift. Remove all #Date# references.
      force-window-in-group/force-window-center-in-group: new functions
      Use ISO_Left_Tab	instead of Tab for select-previous-child.
      Move *.lisp in src/
      Move clfswm.asd and load.lisp on main directory
      TODO: new file
      Add alt+1/2/3... description
      More TODO things
      New functions: Show/hide groups info windows.
      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).
      Remove :button-* in *window-events* -> prevent an access-error bug
      This patch just fixes an annoyance when calling our script without any argument.
      Ignore files for git
      New version package. Move date-string to tools.lisp. Localize date-string
      Pack, Fill, Resize functions.
      Remove show-all-childs in info-mode -> less flickering
      more TODO things
      explode-group/explode-current-group: new functions.
      Rename 'group' in 'frame'. Rename 'childs' in 'children'. keys-from-list new clfswm-info function
      Do not raise windows with no-layout
      Use :first-only to raise only the first child (useful with no-layout).
      Mouse move and resize. New functions for coordinates conversions
      In second mode: Focus, move and resize the current child (even if it's a window).
      Create a new frame on the root window. (in the main mode only if *create-frame-on-root* is true)
      In with-all-*: Reverse the child list to manage the first child last (like in show-all-children)
      Create a default frame in the root frame (Be sure to update your configuration file). Up/Down: Swap select previous/next level
      Stop button event only if there is a geometry change. More TODO things
      Bind Alt+mouse-1/3 to move or resize a frame or the window's father.
      Limit minimal child size to 1x1.
      bind-or-jump: New (great) function.
      Allow additional arguments to function on key/mouse press/release. Add keys definitions to bind-or-jump in the second mode.
      New nw-hook: Open the next window in the current frame and leave the focus to the current child.
      test of git pack
      Test again
      Set the layout only one time and revert to no-layout to freely handle frames. Apply this with open-in-new-frame-in-root-frame-nw-hook
      switch-to-root-frame: show later - new key parameter to have less flickering.
      Keyboard handle strategie change: Grab all keys by default and replay just what is needed. No change for	the second mode.
      Add key handling on no focus window and on frame windows.
      Better handle of	keysyms. Revert to hold grabning method for the main mode.
      Handle all keysyms in the main mode (for example: 1 on an azerty keyboard).
      Move the default frame creation on the default init hook.
      Move the size computation outside the show-child part. Redisplay only the current child when needed. More TODO things
      Display-child is	the first child by default -> less flickering. Solve a bug with father-p in show-all-children.
      New menu system that let user change keys or functions associated to keys.
      Show the documentation for the function bound on a key.
      Move with-movement, current-frame-fill/pack/resize-* from bindings-second-mode.lisp to clfswm-util.lisp.
      clfswm.asd: Add a dependency from clfswm-second-mode.lisp to clfswm.lisp.
      open-in-new-frame-in-parent-frame-nw-hook: New new window hook. adapt-current-frame-to-window-hints: New function. ensure-printable: Return always a string even with a null string.
      src/*.lisp: Rename all 'father' occurrences to 'parent'.
      Managed type: new frame parameter. This allow to choose what window type a frame must handle.
      A git test
      Another git test
      Another test
      Another test...
      And another git test
      Another test..
      A test of svn
      Final git/svn test?
      New TODO things

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


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




More information about the clfswm-cvs mailing list