From 226bf5299e983bb09cf0f21790c8f4c8f3887410 Mon Sep 17 00:00:00 2001 From: Aparajita Fishman Date: Tue, 26 Feb 2013 21:07:12 -0500 Subject: [PATCH] Fix: don't touch the item state unless disabling --- AppKit/CPMenu/CPMenu.j | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/AppKit/CPMenu/CPMenu.j b/AppKit/CPMenu/CPMenu.j index 8bc7dca64..26ab8981c 100644 --- a/AppKit/CPMenu/CPMenu.j +++ b/AppKit/CPMenu/CPMenu.j @@ -629,8 +629,7 @@ var _CPMenuBarVisible = NO, if (!validator) { // Check to see if there is a target binding with a valid selector - var info = [CPBinder infoForBinding:CPTargetBinding forObject:item], - valid = NO; + var info = [CPBinder infoForBinding:CPTargetBinding forObject:item]; if (info) { @@ -640,10 +639,9 @@ var _CPMenuBarVisible = NO, target = [object valueForKeyPath:keyPath], selector = [options valueForKey:CPSelectorNameBindingOption]; - valid = target && selector && [target respondsToSelector:CPSelectorFromString(selector)]; + if (target && selector && ![target respondsToSelector:CPSelectorFromString(selector)]) + [item setEnabled:NO]; } - - [item setEnabled:valid]; } else if (![validator respondsToSelector:[item action]]) [item setEnabled:NO];