X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;f=openbox%2Fmouse.c;h=78e25d8966275c23d9d8f1b384fa86328ce798ca;hb=4fdf8a431538eece230016ec2e0fd94d62fcec93;hp=9ca7987728fa43044893dc105d488559275fb71c;hpb=f237e72a307acd7c487c7e2257e24a735c3e7d6e;p=chaz%2Fopenbox diff --git a/openbox/mouse.c b/openbox/mouse.c index 9ca79877..78e25d89 100644 --- a/openbox/mouse.c +++ b/openbox/mouse.c @@ -65,16 +65,17 @@ ObFrameContext mouse_button_frame_context(ObFrameContext context, case OB_FRAME_CONTEXT_DESKTOP: case OB_FRAME_CONTEXT_CLIENT: case OB_FRAME_CONTEXT_TITLEBAR: - case OB_FRAME_CONTEXT_HANDLE: case OB_FRAME_CONTEXT_FRAME: case OB_FRAME_CONTEXT_MOVE_RESIZE: break; + case OB_FRAME_CONTEXT_BOTTOM: case OB_FRAME_CONTEXT_BLCORNER: case OB_FRAME_CONTEXT_BRCORNER: - x = OB_FRAME_CONTEXT_HANDLE; + x = OB_FRAME_CONTEXT_BOTTOM; break; case OB_FRAME_CONTEXT_TLCORNER: case OB_FRAME_CONTEXT_TRCORNER: + case OB_FRAME_CONTEXT_TOP: case OB_FRAME_CONTEXT_MAXIMIZE: case OB_FRAME_CONTEXT_ALLDESKTOPS: case OB_FRAME_CONTEXT_SHADE: @@ -204,6 +205,11 @@ void mouse_event(ObClient *client, XEvent *e) e->xbutton.x_root, e->xbutton.y_root, e->xbutton.time); + /* if the bindings grab the pointer, there won't be a ButtonRelease + event for us */ + if (grab_on_pointer()) + button = 0; + if (CLIENT_CONTEXT(context, client)) { /* Replay the event, so it goes to the client*/ XAllowEvents(ob_display, ReplayPointer, event_curtime);