all repos — fluxbox @ 8a6623040ea543f20712dbcb1ed2f9456118961c

custom fork of the fluxbox windowmanager

Don't replay presses which are required f/ motions

When trying to doAction(ButtonPress, ...), we check whether the
action would hit for type==MotionNotify.
In this case we do nothing but return "true" to tell the caller that
this event is "for us". Otherwise the event would be replayed to the
client and there'd go out MotionNotify grabs.

tl;du: This fixes MoveX actions.
Thomas Lübking thomas.luebking@gmail.com
commit

8a6623040ea543f20712dbcb1ed2f9456118961c

parent

bb013f5c75120df0f86a7a17cbae61bdca2618f4

1 files changed, 4 insertions(+), 0 deletions(-)

jump to
M src/Keys.ccsrc/Keys.cc

@@ -555,6 +555,10 @@ // click commands

if (!temp_key && isdouble) temp_key = next_key->find(type, mods, key, context, false); + if (!temp_key && type == ButtonPress && // unassigned button press + next_key->find(MotionNotify, mods, key, context, false)) + return true; // if there's a motion action, prevent replay to the client (but do nothing) + if (temp_key && !temp_key->keylist.empty()) { // emacs-style if (!saved_keymode) saved_keymode = m_keylist;