X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;f=src%2Factions.cc;h=3a7ff36982898fee3d18e8f1dc3013afc8fdb8e4;hb=f305e7f18dd9745e99518da7ca70183c3084a991;hp=3eb292158bf257f0a908a2587d73e03953e96b62;hpb=115fedf432d73f17ade48eaa2fa12dfd333bfcaa;p=chaz%2Fopenbox diff --git a/src/actions.cc b/src/actions.cc index 3eb29215..3a7ff369 100644 --- a/src/actions.cc +++ b/src/actions.cc @@ -42,6 +42,7 @@ void Actions::insertPress(const XButtonEvent &e) _posqueue[i] = _posqueue[i-1]; } _posqueue[0] = a; + a->win = e.window; a->button = e.button; a->pos = otk::Point(e.x_root, e.y_root); @@ -274,6 +275,8 @@ void Actions::motionHandler(const XMotionEvent &e) if (!e.same_screen) return; // this just gets stupid + if (e.window != _posqueue[0]->win) return; + MouseContext::MC context; EventHandler *h = openbox->findHandler(e.window); Frame *f = dynamic_cast(h); @@ -287,7 +290,7 @@ void Actions::motionHandler(const XMotionEvent &e) return; // not a valid mouse context int x_root = e.x_root, y_root = e.y_root; - + // compress changes to a window into a single change XEvent ce; while (XCheckTypedWindowEvent(**otk::display, e.window, e.type, &ce)) {