Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(396)

Unified Diff: chrome/browser/cocoa/preferences_window_controller.mm

Issue 207027: [Mac] Polish the search engine manager (Closed)
Patch Set: '' Created 11 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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

Powered by Google App Engine
This is Rietveld 408576698