diff options
author | Jan Djärv <jan.h.d@swipnet.se> | 2011-12-18 15:50:19 +0100 |
---|---|---|
committer | Jan Djärv <jan.h.d@swipnet.se> | 2011-12-18 15:50:19 +0100 |
commit | 5fecd5fce0bac31f1d39d84caa9d2c444c8e7e01 (patch) | |
tree | 884906787db3c2cb7af26ca28e9e25f3f0e5a58a /src/nsterm.m | |
parent | c803b2b767f8ed06beb28106a03f23bc577cfdae (diff) | |
download | emacs-5fecd5fce0bac31f1d39d84caa9d2c444c8e7e01.tar.gz |
Adapt code from AquaEmacs to handle occasional blank menus.
* nsmenu.m (trackingMenu): New variable.
(NSMenuDidBeginTrackingNotification): Declare if OSX < 10.5 and
NS_IMPL_COCOA.
(trackingNotification): New method (from AquaEmacs).
(menuNeedsUpdate): Expand comment and return if trackingMenu is 0,
from AquaEmacs.
(syms_of_nsmenu): Set trackingMenu to 1 if not NS_IMPL_COCOA.
* nsterm.m (ns_term_init): Subscribe for notifications
NSMenuDidBeginTrackingNotification and NSMenuDidEndTrackingNotification
to method trackingNotification in EmacsMenu.
Fixes: debbugs:7030
Diffstat (limited to 'src/nsterm.m')
-rw-r--r-- | src/nsterm.m | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/nsterm.m b/src/nsterm.m index 1d645943065..055959bf2ac 100644 --- a/src/nsterm.m +++ b/src/nsterm.m @@ -4203,6 +4203,15 @@ ns_term_init (Lisp_Object display_name) [NSApp setServicesMenu: svcsMenu]; /* Needed at least on Cocoa, to get dock menu to show windows */ [NSApp setWindowsMenu: [[NSMenu alloc] init]]; + + [[NSNotificationCenter defaultCenter] + addObserver: mainMenu + selector: @selector (trackingNotification:) + name: NSMenuDidBeginTrackingNotification object: mainMenu]; + [[NSNotificationCenter defaultCenter] + addObserver: mainMenu + selector: @selector (trackingNotification:) + name: NSMenuDidEndTrackingNotification object: mainMenu]; } #endif /* MAC OS X menu setup */ |