# HG changeset patch # User Richard M. Stallman # Date 773609096 0 # Node ID c3bc5fca374fbc58b3ce34e958e1f4f78a42d648 # Parent 0c7bcd40a21edc06a9398a578eed53e9eb1ac1e7 (xmenu_show) {USE_X_TOOLKIT}: ButtonPress no longer pops down; instead it forces the next ButtonRelease to exit. Don't dispatch on ButtonPress events. diff -r 0c7bcd40a21e -r c3bc5fca374f src/xmenu.c --- a/src/xmenu.c Thu Jul 07 18:39:02 1994 +0000 +++ b/src/xmenu.c Thu Jul 07 19:24:56 1994 +0000 @@ -1416,6 +1416,7 @@ Position root_x, root_y; int first_pane; + int next_release_must_exit = 0; *error = NULL; @@ -1655,16 +1656,27 @@ Vmouse_depressed = Qnil; } if (! (menu_item_selection == 0 + && !next_release_must_exit && (((XButtonEvent *) (&event))->time - last_event_timestamp < XINT (Vdouble_click_time)))) break; + /* Don't call XtDispatchEvent again for the same event! */ + continue; } else if (event.type == ButtonPress) { + next_release_must_exit = 1; +#if 0 + XtDispatchEvent (&event); /* Any mouse button activity that doesn't select in the menu should unpost the menu. */ if (menu_item_selection == 0) break; +#endif + /* Don't call XtDispatchEvent for the down event. + Doing so seems to give strange results + when you click on the menu bar while a menu is posted. */ + continue; } else if (event.type == KeyPress) {