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
1 files changed,
4 insertions(+),
0 deletions(-)
jump to
M
src/Keys.cc
→
src/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;