DescriptionArwed v. Merkatz
2003-09-30 16:35:45 EDT
i use focus follows mouse with autoraise and placement under mouse cursor.
when i open the root-menu by clicking on the desktop with the mouse pointer in
the lower right screen corner, the root menu gets opened and the mouse pointer
jumps to a position left and upper from the root menu instead of staying where
it was
what's the idea behind this? it makes the root-menu practically useless for me
since it's a pain to always move the mous back to where the menu actually is
Um, it should be jumping to the top left corner of the menu, so that the same
motion always takes you to the same place in the menu. If its jumping too far,
you probably bound the ShowMenu action more than once.
it is a bug then, the show-menu action is only bound once to the mouse (though
there are keyboard bindings for it too), and it only happens if the mouse is in
the lower right of the screen
some more info:
it only jumps twice as far as needed if the root menu that pops up ends up being
over another window, on an empty desktop it works fine.
bindings i use for the root-menu:
mouse: middle button on desktop
keyboard: the two windows keys (Super_L, Super_R)
I can't reproduce this with your rc.xml. It moves the mouse to the top of the menu.
Comment 11Arwed v. Merkatz
2003-10-01 15:11:41 EDT
The problem seems to be caused by rox (http://rox.sourceforge.net) when i let it
draw the desktop. Strange thing is that i removed all other bindings for the
middle mouse button except for the desktop one, and don't have any icons there
that could be recognized as client windows by openbox
Oh, I bet i know what it is. Make it stop sending copies of the mouse events to
the root window. I'm pretty sure it has an option for this.
Comment 13Arwed v. Merkatz
2003-10-02 12:00:58 EDT
Still happens, i tried messing with the rox code and haven't found anything
wrong with it. It doesn't send copies of mouse events to the root window, it
forwards them if it doesn't handle them itself. If i disable that openbox
doesn't get any root window clicks anymore.
The weird thing about all this is that it doesn't happen every time i click on
the desktop, sometimes it works as it's supposed to.
Comment 14Arwed v. Merkatz
2003-10-02 13:01:19 EDT
Created attachment 110[details]
patch that fixes the problem
this patch fixes the problem for me, though it's a bit ugly, since it has a
special case for mouse buttons 1-3, but without that '&& (button <= 3)' X
freezes when i use the mouse wheel to switch desktops
Rox *shouldn't* be sending the mouse events it doesn't use to the root window.
Openbox grabs them on the Rox window. This behavior should be toggleable in Rox,
and should be disabled when running Openbox. I won't patch Openbox because Rox
is resending the mouse events.
Comment 16Arwed v. Merkatz
2003-10-03 07:15:54 EDT
Without rox sending those events to the root window it's not possible to have
mouse bindings for the desktop, since openbox never gets any events for the
desktop. But i know rox uses a very strange method of doing the desktop, so i
understand that you don't want to add hacks to openbox for this. I'll just keep
patching my copy locally.
If the rox desktop window is type _NET_WM_TYPE_DESKTOP then Openbox does grab
the events on its window. So they do not need to and shouldn't be resent to the
root window.
Created attachment 109 [details] my rc.xml
Created attachment 110 [details] patch that fixes the problem this patch fixes the problem for me, though it's a bit ugly, since it has a special case for mouse buttons 1-3, but without that '&& (button <= 3)' X freezes when i use the mouse wheel to switch desktops