| Index: chrome/browser/cocoa/preferences_window_controller.mm
|
| diff --git a/chrome/browser/cocoa/preferences_window_controller.mm b/chrome/browser/cocoa/preferences_window_controller.mm
|
| index 26a82bbf95c666402f68fc164a45b6167b963d5e..b3f234dd7e5393b1941a35a00a516660abb4669c 100644
|
| --- a/chrome/browser/cocoa/preferences_window_controller.mm
|
| +++ b/chrome/browser/cocoa/preferences_window_controller.mm
|
| @@ -540,11 +540,24 @@ enum { kHomepageNewTabPage, kHomepageURL };
|
| [self setSearchEngineSelectedIndex:[self searchEngineSelectedIndex]];
|
| }
|
|
|
| +// Notification receiver for when the keyword editor window closes. The
|
| +// controller will clean up the window, but we need to clean up.
|
| +- (void)keywordEditorClosed:(NSNotification*)notif {
|
| + keywordEditorController_ = nil;
|
| +}
|
| +
|
| // Brings up the edit search engines window.
|
| - (IBAction)manageSearchEngines:(id)sender {
|
| - KeywordEditorCocoaController* controller =
|
| - [[KeywordEditorCocoaController alloc] initWithProfile:profile_];
|
| - [[controller window] makeKeyAndOrderFront:sender];
|
| + if (!keywordEditorController_) {
|
| + keywordEditorController_ =
|
| + [[KeywordEditorCocoaController alloc] initWithProfile:profile_];
|
| + NSNotificationCenter* center = [NSNotificationCenter defaultCenter];
|
| + [center addObserver:self
|
| + selector:@selector(keywordEditorClosed:)
|
| + name:NSWindowWillCloseNotification
|
| + object:[keywordEditorController_ window]];
|
| + }
|
| + [[keywordEditorController_ window] makeKeyAndOrderFront:sender];
|
| }
|
|
|
| // Called when the user clicks the button to make Chromium the default
|
|
|