diff options
| author | Jan Djärv | 2005-01-07 20:50:46 +0000 |
|---|---|---|
| committer | Jan Djärv | 2005-01-07 20:50:46 +0000 |
| commit | 9b85e63d346b2e4de1295228356d4e2ea49a3ff1 (patch) | |
| tree | 2cb459d5660d071c394f99c668fa290186ee3b41 /src/xmenu.c | |
| parent | 9abb41ebcbc01ec50cc1c5fab913cb003a16e052 (diff) | |
| download | emacs-9b85e63d346b2e4de1295228356d4e2ea49a3ff1.tar.gz emacs-9b85e63d346b2e4de1295228356d4e2ea49a3ff1.zip | |
* xmenu.c (create_and_show_popup_menu): Pass zero as button to
gtk_menu_popup if not for_click, so callbacks for the menu are called.
Diffstat (limited to 'src/xmenu.c')
| -rw-r--r-- | src/xmenu.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/src/xmenu.c b/src/xmenu.c index f9c2dc4bd1b..57f184e121f 100644 --- a/src/xmenu.c +++ b/src/xmenu.c | |||
| @@ -2454,10 +2454,6 @@ create_and_show_popup_menu (f, first_wv, x, y, for_click) | |||
| 2454 | G_CALLBACK (menu_highlight_callback)); | 2454 | G_CALLBACK (menu_highlight_callback)); |
| 2455 | xg_crazy_callback_abort = 0; | 2455 | xg_crazy_callback_abort = 0; |
| 2456 | 2456 | ||
| 2457 | for (i = 0; i < 5; i++) | ||
| 2458 | if (FRAME_X_DISPLAY_INFO (f)->grabbed & (1 << i)) | ||
| 2459 | break; | ||
| 2460 | |||
| 2461 | if (! for_click) | 2457 | if (! for_click) |
| 2462 | { | 2458 | { |
| 2463 | /* Not invoked by a click. pop up at x/y. */ | 2459 | /* Not invoked by a click. pop up at x/y. */ |
| @@ -2470,8 +2466,16 @@ create_and_show_popup_menu (f, first_wv, x, y, for_click) | |||
| 2470 | popup_x_y.x = x; | 2466 | popup_x_y.x = x; |
| 2471 | popup_x_y.y = y; | 2467 | popup_x_y.y = y; |
| 2472 | popup_x_y.f = f; | 2468 | popup_x_y.f = f; |
| 2473 | } | ||
| 2474 | 2469 | ||
| 2470 | i = 0; /* gtk_menu_popup needs this to be 0 for a non-button popup. */ | ||
| 2471 | } | ||
| 2472 | else | ||
| 2473 | { | ||
| 2474 | for (i = 0; i < 5; i++) | ||
| 2475 | if (FRAME_X_DISPLAY_INFO (f)->grabbed & (1 << i)) | ||
| 2476 | break; | ||
| 2477 | } | ||
| 2478 | |||
| 2475 | /* Display the menu. */ | 2479 | /* Display the menu. */ |
| 2476 | gtk_widget_show_all (menu); | 2480 | gtk_widget_show_all (menu); |
| 2477 | gtk_menu_popup (GTK_MENU (menu), 0, 0, pos_func, &popup_x_y, i, 0); | 2481 | gtk_menu_popup (GTK_MENU (menu), 0, 0, pos_func, &popup_x_y, i, 0); |