diff options
Diffstat (limited to 'editors/emacs23/files/patch-src-xfns.c')
-rw-r--r-- | editors/emacs23/files/patch-src-xfns.c | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/editors/emacs23/files/patch-src-xfns.c b/editors/emacs23/files/patch-src-xfns.c new file mode 100644 index 000000000000..16415d515a53 --- /dev/null +++ b/editors/emacs23/files/patch-src-xfns.c @@ -0,0 +1,30 @@ +--- src/xfns.c.orig 2009-08-31 00:03:02.000000000 +0100 ++++ src/xfns.c 2009-08-31 00:21:39.000000000 +0100 +@@ -468,8 +468,10 @@ + if (!FRAME_X_P (f) || FRAME_X_DISPLAY_INFO (f) != dpyinfo) + continue; + x = f->output_data.x; +- /* Match if the window is this frame's menubar. */ + #ifdef USE_GTK ++ /* Match if the window is this frame's window (button presses are no longer ++ caught by the menubar) or a menu in the menubar. ++ */ + if (x->menubar_widget) + { + GtkWidget *gwdesc = xg_win_to_widget (dpyinfo->display, wdesc); +@@ -477,13 +479,14 @@ + + BLOCK_INPUT; + if (gwdesc != 0 +- && (gwdesc == x->menubar_widget ++ && (gwdesc == gtk_widget_get_parent (gtk_widget_get_parent (x->menubar_widget)) + || gtk_widget_get_parent (gwdesc) == x->menubar_widget)) + found = 1; + UNBLOCK_INPUT; + if (found) return f; + } + #else ++ /* Match if the window is in this frame's menubar */ + if (x->menubar_widget + && lw_window_is_in_menubar (wdesc, x->menubar_widget)) + return f; |