On Oct 20, 2013, at 2:37 PM, Ken Thomases <k...@codeweavers.com> wrote:

> On Oct 20, 2013, at 2:29 PM, Charles Srstka wrote:
> 
>> -menuNeedsUpdate: has the same problem that -validateMenuItem: has. It 
>> doesn't get called until the menu is about to be actually drawn, which 
>> doesn't happen until the user clicks on your menu.
> 
> This isn't correct.  Menus are updated/validated when resolving keyboard 
> shortcuts.  What makes you think otherwise?  Lots of things wouldn't work if 
> that weren't so.

Huh, I just tested this, and you're right. I stand corrected.

However, this appears to be undocumented behavior, since the documentation 
clearly states that this is supposed to be invoked when the menu is being 
displayed:

https://developer.apple.com/library/Mac/documentation/Cocoa/Reference/NSMenuDelegate_Protocol/Reference/Reference.html#//apple_ref/doc/uid/TP40008605-CH1-SW14

menuNeedsUpdate:
Invoked when a menu is about to be displayed at the start of a tracking session 
so the delegate can modify the menu.

- (void)menuNeedsUpdate:(NSMenu *)menu
Parameters
menu
The menu object that is about to be displayed.

Given that this behavior is not guaranteed by the documentation, I'm not sure 
that it should be relied on.

Charles

_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to