emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/src/xmenu.c


From: Jan Djärv
Subject: [Emacs-diffs] Changes to emacs/src/xmenu.c
Date: Mon, 27 Dec 2004 10:36:53 -0500

Index: emacs/src/xmenu.c
diff -c emacs/src/xmenu.c:1.273 emacs/src/xmenu.c:1.274
*** emacs/src/xmenu.c:1.273     Tue Dec  7 13:11:59 2004
--- emacs/src/xmenu.c   Mon Dec 27 15:24:12 2004
***************
*** 1243,1248 ****
--- 1243,1253 ----
                 && dpyinfo->display == event.xbutton.display)
          {
            KeySym keysym = XLookupKeysym (&event.xkey, 0);
+ 
+           /* Pop down on C-g.  */
+           if (keysym == XK_g && (event.xkey.state & ControlMask) != 0)
+             popup_activated_flag = 0;
+ 
            if (!IsModifierKey (keysym)
                && x_any_window_to_frame (dpyinfo, event.xany.window) != NULL)
            popup_activated_flag = 0;
***************
*** 2226,2231 ****
--- 2231,2239 ----
      }
    else
      {
+       char menuOverride[] = "Ctrl<KeyPress>g: MenuGadgetEscape()";
+       XtTranslations  override = XtParseTranslationTable (menuOverride);
+ 
        menubar_widget = lw_create_widget ("menubar", "menubar", id, first_wv,
                                         f->output_data.x->column_widget,
                                         0,
***************
*** 2234,2239 ****
--- 2242,2250 ----
                                         popup_deactivate_callback,
                                         menu_highlight_callback);
        f->output_data.x->menubar_widget = menubar_widget;
+ 
+       /* Make menu pop down on C-g.  */
+       XtOverrideTranslations (menubar_widget, override);
      }
  
    {
***************
*** 3155,3160 ****
--- 3166,3174 ----
            }
        }
      }
+   else
+     /* Make "Cancel" equivalent to C-g.  */
+     Fsignal (Qquit, Qnil);
  
    return Qnil;
  }
***************
*** 3500,3506 ****
--- 3514,3526 ----
      case XM_FAILURE:
        *error = "Can't activate menu";
      case XM_IA_SELECT:
+       entry = Qnil;
+       break;
      case XM_NO_SELECT:
+       /* Make "Cancel" equivalent to C-g unless this menu was popped up by
+          a mouse press.  */
+       if (! for_click)
+         Fsignal (Qquit, Qnil);
        entry = Qnil;
        break;
      }




reply via email to

[Prev in Thread] Current Thread [Next in Thread]