Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

Close

#73 fix minor ROX-Filer pinboard bug under WindowLab wm

closed-rejected
nobody
None
5
2004-06-26
2004-06-24
No

I've found a minor problem in how the ROX-Filer
pinboard window (using
the compatibility option to override window manager
control of the
pinboard and panels) interacts with the WindowLab
window manager,
available from http://www.nickgravgaard.com/windowlab/.
The raising and
lowering mechanism used in WindowLab, accessible via
clicking on the
z-order button on an application's titlebar or on that
application's
entry in the taskbar, is based on the following two rules:

1. If the window is not on the top, raise it to the top.
2. If the window is on top, lower it to the bottom.

When rule #2 takes effect, the window is lowered to the
bottom, below
the pinboard window. The latter does lower itself to
the bottom when a
mouse button is clicked on it, but that isn't enough in
this case.
(Note that, for reasons of simplicity, WindowLab
doesn't implement the
NET_WM hints, so it doesn't ensure that windows with
the NET_WM_DESKTOP
hint are left on the bottom. The attached patch, which
applies cleanly
both to 2.1.2 and the June 22 CVS snapshot, changes
pinboard.c to lower
the pinboard window whenever an expose event occurs,
instead of a
button-click event, which appears to successfully keep
the pinboard
window on the bottom even after a window is raised or
lowered.

Discussion

  • Thomas Leonard
    Thomas Leonard
    2004-06-26

    • status: open --> closed-rejected
     
  • Thomas Leonard
    Thomas Leonard
    2004-06-26

    Logged In: YES
    user_id=40461

    Lowering on expose events won't work. Consider the case of
    desklets: they must lower too on expose, which will expose
    the pinboard (as they go under it), so it will lower,
    triggering the desklets to lower again... infinite loop.

    This is just a window manager bug, and needs to be fixed
    there. Applications like the filer can't know enough about
    other windows to do restacking correctly (we already have
    the click-to-lower hack, which at least can't get stuck
    looping).