]> Dogcows Code - chaz/openbox/blobdiff - openbox/event.c
allow the res_class in WM_CLASS to mark a window as a dock app, if it is set to the...
[chaz/openbox] / openbox / event.c
index eb69d090827b0e524c2cf4ebc8593a4a3a292f12..8e0a6bb379bc58dc0abe19b287324fe77aa85072 100644 (file)
@@ -1792,8 +1792,9 @@ static gboolean event_handle_menu_input(XEvent *ev)
     if (ev->type == ButtonRelease || ev->type == ButtonPress) {
         ObMenuEntryFrame *e;
 
-        if (menu_hide_delay_reached() &&
-            (ev->xbutton.button < 4 || ev->xbutton.button > 5))
+        if ((ev->xbutton.button < 4 || ev->xbutton.button > 5) &&
+            ((ev->type == ButtonRelease && menu_hide_delay_reached()) ||
+             ev->type == ButtonPress))
         {
             if ((e = menu_entry_frame_under(ev->xbutton.x_root,
                                             ev->xbutton.y_root)))
@@ -1804,7 +1805,7 @@ static gboolean event_handle_menu_input(XEvent *ev)
                 if (ev->type == ButtonRelease)
                     menu_entry_frame_execute(e, ev->xbutton.state);
             }
-            else if (ev->type == ButtonRelease)
+            else
                 menu_frame_hide_all();
         }
         ret = TRUE;
@@ -2073,7 +2074,6 @@ static gboolean focus_delay_func(gpointer data)
     if (client_focus(d->client) && config_focus_raise)
         stacking_raise(CLIENT_AS_WINDOW(d->client));
     event_curtime = old;
-    XFlush(obt_display);
     return FALSE; /* no repeat */
 }
 
@@ -2086,7 +2086,6 @@ static gboolean unfocus_delay_func(gpointer data)
     event_curserial = d->serial;
     focus_nothing();
     event_curtime = old;
-    XFlush(obt_display);
     return FALSE; /* no repeat */
 }
 
This page took 0.023421 seconds and 4 git commands to generate.