summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/actions.cc11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/actions.cc b/src/actions.cc
index 7b538de6..309323cc 100644
--- a/src/actions.cc
+++ b/src/actions.cc
@@ -88,6 +88,17 @@ void OBActions::buttonPressHandler(const XButtonEvent &e)
if (_button) return; // won't count toward CLICK events
_button = e.button;
+
+ if (w->mcontext() == MC_Window) {
+ /*
+ Because of how events are grabbed on the client window, we can't get
+ ButtonRelease events, so instead we simply manufacture them here, so that
+ clicks/doubleclicks etc still work.
+ */
+ XButtonEvent ev = e;
+ ev.type = ButtonRelease;
+ buttonReleaseHandler(ev);
+ }
}