]> Dogcows Code - chaz/openbox/blobdiff - openbox/mouse.c
don't queue showmenu events, and set button to 0 when a grab is in place after the...
[chaz/openbox] / openbox / mouse.c
index 9ca7987728fa43044893dc105d488559275fb71c..78e25d8966275c23d9d8f1b384fa86328ce798ca 100644 (file)
@@ -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);
This page took 0.021919 seconds and 4 git commands to generate.