diff options
author | thakis@chromium.org <thakis@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-01-19 22:10:53 +0000 |
---|---|---|
committer | thakis@chromium.org <thakis@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-01-19 22:10:53 +0000 |
commit | fcdc18a51a39aa9f9a8961306eb583d17ee26289 (patch) | |
tree | 8cc16230516561665acb685acf1dda408a29fdc2 /chrome/browser/cocoa/keyword_editor_cocoa_controller.mm | |
parent | 5d722824a29973ca54ae6e1bb4ee36a88e6854d5 (diff) | |
download | chromium_src-fcdc18a51a39aa9f9a8961306eb583d17ee26289.zip chromium_src-fcdc18a51a39aa9f9a8961306eb583d17ee26289.tar.gz chromium_src-fcdc18a51a39aa9f9a8961306eb583d17ee26289.tar.bz2 |
Mac: Save/restore task manager window pos and size.
Make window size remembering mechanism easier to use and more compatible with windows's chrome profiles.
Nib changes: Unset "show at startup" so that the initial repositioning isn't visible.
BUG=32147
TEST=Move & size taskman window, quit chrome, reopen chrome. Size & pos should've stayed. Same for keyword editor. Page info dialog should behave as it did before.
Review URL: http://codereview.chromium.org/536086
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36557 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/cocoa/keyword_editor_cocoa_controller.mm')
-rw-r--r-- | chrome/browser/cocoa/keyword_editor_cocoa_controller.mm | 27 |
1 files changed, 9 insertions, 18 deletions
diff --git a/chrome/browser/cocoa/keyword_editor_cocoa_controller.mm b/chrome/browser/cocoa/keyword_editor_cocoa_controller.mm index 7440a17..5495235 100644 --- a/chrome/browser/cocoa/keyword_editor_cocoa_controller.mm +++ b/chrome/browser/cocoa/keyword_editor_cocoa_controller.mm @@ -9,8 +9,8 @@ #include "base/sys_string_conversions.h" #include "chrome/browser/browser_process.h" #import "chrome/browser/cocoa/edit_search_engine_cocoa_controller.h" -#import "chrome/browser/cocoa/nswindow_local_state.h" #import "chrome/browser/cocoa/keyword_editor_cocoa_controller.h" +#import "chrome/browser/cocoa/window_size_autosaver.h" #include "chrome/browser/profile.h" #include "chrome/browser/search_engines/template_url_table_model.h" #include "chrome/common/pref_names.h" @@ -144,6 +144,14 @@ typedef std::map<Profile*,KeywordEditorCocoaController*> ProfileControllerMap; controller_->table_model()->SetObserver(observer_.get()); controller_->url_model()->AddObserver(observer_.get()); groupCell_.reset([[NSTextFieldCell alloc] init]); + + if (g_browser_process && g_browser_process->local_state()) { + sizeSaver_.reset([[WindowSizeAutosaver alloc] + initWithWindow:[self window] + prefService:g_browser_process->local_state() + path:prefs::kKeywordEditorWindowPlacement + state:kSaveWindowRect]); + } } return self; } @@ -164,14 +172,6 @@ typedef std::map<Profile*,KeywordEditorCocoaController*> ProfileControllerMap; size.height = NSHeight([addButton_ frame]); [makeDefaultButton_ setFrameSize:size]; - // Restore the window position. - if (g_browser_process && g_browser_process->local_state()) { - PrefService* prefs = g_browser_process->local_state(); - NSWindow* window = [self window]; - [window restoreWindowPositionFromPrefs:prefs - withPath:prefs::kKeywordEditorWindowPlacement]; - } - [self adjustEditingButtons]; [tableView_ setDoubleAction:@selector(editKeyword:)]; [tableView_ setTarget:self]; @@ -192,15 +192,6 @@ typedef std::map<Profile*,KeywordEditorCocoaController*> ProfileControllerMap; } } -// Remeber the position of the keyword editor. -- (void)windowDidMove:(NSNotification*)notif { - if (g_browser_process && g_browser_process->local_state()) { - NSWindow* window = [self window]; - [window saveWindowPositionToPrefs:g_browser_process->local_state() - withPath:prefs::kKeywordEditorWindowPlacement]; - } -} - - (void)modelChanged { [tableView_ reloadData]; [self adjustEditingButtons]; |