diff --git a/AppKit/CPButton.j b/AppKit/CPButton.j index 7cfe38e54..01f173f8c 100644 --- a/AppKit/CPButton.j +++ b/AppKit/CPButton.j @@ -569,6 +569,7 @@ CPButtonStateMixed = CPThemeState("mixed"); */ - (void)setKeyEquivalent:(CPString)aString { + _keyEquivalent = aString || @""; // Check if the key equivalent is the enter key // Treat \r and \n as the same key equivalent. See issue #710. if (aString === CPNewlineCharacter || aString === CPCarriageReturnCharacter) @@ -581,8 +582,6 @@ CPButtonStateMixed = CPThemeState("mixed"); [[self window] setDefaultButton:nil]; [self setDefaultButton:NO]; } - - _keyEquivalent = aString || @""; } - (void)viewWillMoveToWindow:(CPWindow)aWindow diff --git a/AppKit/CPWindow/CPWindow.j b/AppKit/CPWindow/CPWindow.j index de0744e7f..71210c9a3 100644 --- a/AppKit/CPWindow/CPWindow.j +++ b/AppKit/CPWindow/CPWindow.j @@ -2411,7 +2411,8 @@ CPTexturedBackgroundWindowMask _defaultButton = aButton; - [_defaultButton setKeyEquivalent:CPCarriageReturnCharacter]; + if ([_defaultButton keyEquivalent] !== CPCarriageReturnCharacter) + [_defaultButton setKeyEquivalent:CPCarriageReturnCharacter]; } - (CPButton)defaultButton