Version 0.95.8 released
Window Maker 0.95.8 was released on March 11th 2017.
- See the NEWS file and/or the git logs for an overview of the changes.
Version 0.95.7 released
Window Maker 0.95.7 was released on August 2nd 2015.
- Window snapping feature has been added, which allows one to “snap” a window to one side of the screen by dragging it to that side (Doug Torrance).
- New mouse actions configuration were added to WPrefs (David Maciejak).
- New button and wheel mouse actions (David Maciejak).
- Many code cleanups and refactoring by Christophe Curris.
Version 0.95.6 released
Window Maker 0.95.6 was released on August 30th 2014.
- Window Maker can now load WebP images and support ImageMagick library to support even more formats like SVG, BMP, TGA, … (David Maciejak)
- Add mini-window apercu, a small preview of window contents (David Maciejak)
- Support for up to 9-buttons mouse added (David Maciejak)
- Many configuration options added to WPrefs.app (Doug Torrance)
- Add wmiv, an image viewer application (David Maciejak)
- Bug fixes and code cleanups by various people.
Version 0.95.5 released
Window Maker 0.95.5 was released on August 29th 2013.
- Window Maker can now maximize windows to the top/bottom halves of the screen as well as to the corners (top left, top right etc). The keyboard shortcuts to do that can be configured via WPrefs (Renan Traba).
- Support for drawers in the dock has been added (Daniel Dechelotte).
- Keyboard shortcuts to move windows between workspaces (Iain Patterson).
- Window border colours and width are now configurable (Iain Patterson).
- The menu is now able to parse command-generated proplist style menus. WPrefs support for this has been added too (Andreas Bierfert).
- Plus a few other new features and a lot of bug fixes and code cleanups by various people.
Version 0.95.4 released
Window Maker 0.95.4 was released on January 3rd 2013. There was a major code cleanup related to icons, some changes in WPrefs, the addition of a new “Center” placement strategy, support for _NET_FRAME_EXTENTS, the removal of CPP dependency to process menu files and small fixes and improvements all around.
Version 0.95.3 released
Window Maker 0.95.3 was released on May 16th 2012. This release fixes a regression which would cause more than one instance of an application to start (under some circumstances) when using menu shortcuts. The window maximization procedures now have a more intuitive behavior with respect to remembering the old geometry and going back to it. Furthermore, there are some other small fixes and cleanups.
Version 0.95.2 released
Window Maker 0.95.2 was released on February 14th 2012, and it contains just a few commits on top of 0.95.1. They were necessary to fix a few issues like ‘make dist’ not compiling. Furthermore a few more code cleanups slipped in.
Version 0.95.1 released
Window Maker 0.95.1 was released on January 29th 2012.
The last official Window Maker release was version 0.92.0 from 2005, and version 0.95.1 contains many bug fixes and also a few new features.
New features and highlights
The following list is incomplete, but should give a first-order approximation
to the new features in this release. For the truly curious among you, reading
git log is the only complete source of information.
- Left Half/Right Half Maximize.
- Maximus: tiled maximization. Maximizes a window such that it occupies the largest area without overlapping others.
- New mouse-resizing functionality. Windows can now be resized vertically (horizontally) using MOD+Wheel (CTRL+Wheel).
- History and TAB completion in
dialogs. To use this new
functionality in your old WMRootMenu, replace %a by %A in the relevant entry.
It will look like this
(Run..., SHEXEC, "%A(Run, Type command:)"). Or use
wmgenmenuto generate a new menu.
- Bouncing appicon effect.
- New applications (wmgenmenu and wmmenugen) to generate the root menu automatically by looking which applications you have on your $PATH. Translations to German, Spanish and French of menus generated by wmgenmenu.
- Automatic detection of configuration changes. Linux users whose kernel supports the inotify mechanism have their configuration changes detected automatically without polling, reducing the number of CPU wakeups.
- Improved dockapp recognition.
- And many trivial things which reduce little annoyances one might have. For example, an option was added to control whether or not Window Maker should do automatic workspace switching to satisfy a focus request from a window located in another workspace.
- (For developers). The addition of a debian/ folder which allows the creation of a debian package for wmaker using the git sources.
- Added keyboard shortcut to uncover/cover the dock.
- Mac OS X-style window cycling.
- Preliminary XRandR support (needs a bit more work to be bug-free; not compiled in by default. Use –enable-xrandr if you want to test it).
Window Maker 0.92.0 was already very stable, but many bugs were fixed in this release. A very incomplete list is given below, and as time permits it will be updated (including links to the commits) in the future. But the message now is that if you don’t like bugs, use version 0.95.1.
- Fix loading saved states on 64-bit systems
- Fix to avoid a segfault when creating more than 81 workspaces, as reported on youtube here.
- Periodic focus bug.
Summary of changes
A lot of effort was put into cleaning up the code, with lots of code removal and tidying things up. The following output should give you an idea of the development in the last cycle:
git diff --shortstat wmaker-0.92.0+..wmaker-0.95.1 592 files changed, 118361 insertions(+), 133342 deletions(-) git diff --shortstat 688a56e8ab67b..wmaker-0.95.1 566 files changed, 37676 insertions(+), 41817 deletions(-)
The first shortstat is really everything, including the (huge) patch generated in this commit from 2009, which changed the old sources to the linux kernel coding style. The second shortstat contains the summary of development afterwards – but included is the addition of a debian folder with files summing around ~20k lines. The full diffstat for the second command can be seen here.