I was using OpenLook virtual window manager for a long time. Got kind of
addicted to it. But being a Java developer was always giving me a hard
time, since OpenLook doesn't support or has a lot of bugs that prevent
Java AWT or Swing applications to run.
So I started looking for something more modern and well-supported window
manager, but I also wanted to save as many features that I so liked
in olvwm (that are quite unexplainable :). My final choice was
Window Maker. For some reasons,
I saw other people used it, it shouldn't be worse then something else,
and navigating through it's source code I didn't find it too complicated.
The set of the following patches were created during cutomization
of Window Maker so it fits what I want it to. It also took me
some time to modify the preferences, but something can't be changed
from there, hence the vim.
The list of what was fixed, changed or enhanced:
Available for 0.80.0
- Icons are mapped only once, during window creation. So never moved
icons will never get shuffled
- Pressing "Minituarize" key on the miniwindow (icon) will open the window
- Application icons are disabled completely (don't really get the idea)
- If the focus mode is SLOPPY (i.e. on mouse pointer move), remove the
focus from the window when pointer leaves it for root.
- Pressing "Close" key on the window that doesn't allow to close itself
will work
- Menus are no longer stay on top of everything, they have the same priority as a normal window
- If there is no "WMState" file found in ~/GNUstep/Defaults directory, the wmaker wouldn't crash as it did
- Frame border thickness extended to 3 from 1, and painted in "#b2b2b2"
instead of black. People may say that's ugly (well, I do), but having idea
of invisible (i love the black background), superthin frame you have a
hard time clicking is what I disliked.
- Ctrl-dblClick and dblClick behaviour on the title bar has been swapped.
- You can always move the window holding it at frame only. (this thin one,
remember?)
- Double click on frame passes the double click to the title bar, so this
is the same.
- Added resistance to icon move. Works a little bit different from
the window resistant. Basically it's not about pressure, it's about speed.
Stick to screen edges and other icons.
- The title of an icon moved to bottom from top
- The window is not autoraised if you just moving it around.
- Fix SIGSEGV if menu is clicked below the last entry
- Fix SIGSEGV if "Save" clicked in "Attributes" menu when no application
options are available.
- Fixed focus problems in SLOPPY mode : if pointer is moved away from
the window to an icon, it will be removed.
- Fixed another focus problem : if a window has been deiconified,
don't send focus in there (the only happened if there are no other windows
opened in the workspace)
Here is the list of that I plan to change:
- Add properties for default icon placement for an application.
- Add resistance for menu movement.
- Make icons be resistant when moved to a window's edge
- Don't autoraize the window if one doubleclicks on the titlebar.
Gonna be hard due to doubleclick events implementation in wmaker
BUGS
-
Of course they are !
- When you change property of an application class, for some reason,
the application icon is being created along with miniwindow. This behaviour
is completely behind by powers of understanding. Restarting the manager
helps to get rid of them. Or you can set "No application icon" for the application classs from
attributes menu.
- Due to the focus handling in wmaker (enter/leave events), when you
actually move the pointer into the window, it first gains focus (when
frame is hit), then looses focus (after pointer leaves the frame) and
immediately regains it back. There may be an extra couple of events that
are generated for the application. Hope all of yours applications can
handle that.
- Looks like closing by a keyboard shortcut doesn't work if window
doesn't allow close operation after all.
- version 0.80.0 (unified diffs)
This page was accessed times.
(C) Pawel S. Veselov, 2002.
Return to my homepage
[Or (better) press "BACK" button on your cool browser ;)]