diff options
author | shess@chromium.org <shess@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-04-27 20:06:29 +0000 |
---|---|---|
committer | shess@chromium.org <shess@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-04-27 20:06:29 +0000 |
commit | e8c4e753d0a2bcdac816d472d9afa50fdafae7ba (patch) | |
tree | be6849c27a59ee63667fdde7228544b8c80a603d /chrome/browser/autocomplete | |
parent | d3b2e75994860048bf89ccbfc55c5b9c8d53532d (diff) | |
download | chromium_src-e8c4e753d0a2bcdac816d472d9afa50fdafae7ba.zip chromium_src-e8c4e753d0a2bcdac816d472d9afa50fdafae7ba.tar.gz chromium_src-e8c4e753d0a2bcdac816d472d9afa50fdafae7ba.tar.bz2 |
Clean up construction of LocationBarViewMac objects.
This removes the need for SetField() accessors on
AutocompleteEditViewMac and AutocompletePopupViewMac, and also removes
the Init() wart on LocationBarViewMac. Now everything is wired up in
the constructor.
Review URL: http://codereview.chromium.org/92136
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14641 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/autocomplete')
4 files changed, 14 insertions, 24 deletions
diff --git a/chrome/browser/autocomplete/autocomplete_edit_view_mac.h b/chrome/browser/autocomplete/autocomplete_edit_view_mac.h index d6b0928..19f4b31 100644 --- a/chrome/browser/autocomplete/autocomplete_edit_view_mac.h +++ b/chrome/browser/autocomplete/autocomplete_edit_view_mac.h @@ -32,7 +32,8 @@ class AutocompleteEditViewMac : public AutocompleteEditView { AutocompleteEditViewMac(AutocompleteEditController* controller, ToolbarModel* toolbar_model, Profile* profile, - CommandUpdater* command_updater); + CommandUpdater* command_updater, + NSTextField* field); virtual ~AutocompleteEditViewMac(); // Implement the AutocompleteEditView interface. @@ -88,10 +89,6 @@ class AutocompleteEditViewMac : public AutocompleteEditView { void OnKillFocus(); void AcceptInput(WindowOpenDisposition disposition, bool for_drop); - // TODO(shess): Get rid of this. Right now it's needed because of - // the ordering of initialization in tab_contents_controller.mm. - void SetField(NSTextField* field); - // Helper for LocationBarBridge. void FocusLocation(); diff --git a/chrome/browser/autocomplete/autocomplete_edit_view_mac.mm b/chrome/browser/autocomplete/autocomplete_edit_view_mac.mm index 71b6d24..854f3dc 100644 --- a/chrome/browser/autocomplete/autocomplete_edit_view_mac.mm +++ b/chrome/browser/autocomplete/autocomplete_edit_view_mac.mm @@ -23,18 +23,22 @@ AutocompleteEditViewMac::AutocompleteEditViewMac( AutocompleteEditController* controller, ToolbarModel* toolbar_model, Profile* profile, - CommandUpdater* command_updater) + CommandUpdater* command_updater, + NSTextField* field) : model_(new AutocompleteEditModel(this, controller, profile)), - popup_view_(new AutocompletePopupViewMac(this, model_.get(), profile)), + popup_view_(new AutocompletePopupViewMac(this, model_.get(), profile, + field)), controller_(controller), toolbar_model_(toolbar_model), command_updater_(command_updater), - field_(nil), + field_(field), edit_helper_([[AutocompleteFieldDelegate alloc] initWithEditView:this]) { DCHECK(controller); DCHECK(toolbar_model); DCHECK(profile); DCHECK(command_updater); + DCHECK(field); + [field_ setDelegate:edit_helper_]; } AutocompleteEditViewMac::~AutocompleteEditViewMac() { @@ -273,13 +277,6 @@ void AutocompleteEditViewMac::AcceptInput( WindowOpenDisposition disposition, bool for_drop) { model_->AcceptInput(disposition, for_drop); } -void AutocompleteEditViewMac::SetField(NSTextField* field) { - field_ = field; - [field_ setDelegate:edit_helper_]; - - // The popup code needs the field for sizing and placement. - popup_view_->SetField(field_); -} void AutocompleteEditViewMac::FocusLocation() { [[field_ window] makeFirstResponder:field_]; diff --git a/chrome/browser/autocomplete/autocomplete_popup_view_mac.h b/chrome/browser/autocomplete/autocomplete_popup_view_mac.h index 376260a..9cb2af7 100644 --- a/chrome/browser/autocomplete/autocomplete_popup_view_mac.h +++ b/chrome/browser/autocomplete/autocomplete_popup_view_mac.h @@ -29,7 +29,8 @@ class AutocompletePopupViewMac : public AutocompletePopupView { public: AutocompletePopupViewMac(AutocompleteEditViewMac* edit_view, AutocompleteEditModel* edit_model, - Profile* profile); + Profile* profile, + NSTextField* field); virtual ~AutocompletePopupViewMac(); // Implement the AutocompletePopupView interface. @@ -73,12 +74,6 @@ class AutocompletePopupViewMac : public AutocompletePopupView { const std::wstring& ResultDescriptionAt(size_t i); void AcceptInput(WindowOpenDisposition disposition, bool for_drop); - // TODO(shess): Get rid of this. Right now it's needed because of - // the ordering of initialization in tab_contents_controller.mm. - void SetField(NSTextField* field) { - field_ = field; - } - private: // Create the popup_ instance if needed. void CreatePopupIfNeeded(); diff --git a/chrome/browser/autocomplete/autocomplete_popup_view_mac.mm b/chrome/browser/autocomplete/autocomplete_popup_view_mac.mm index bdf7372..f1dbc8e 100644 --- a/chrome/browser/autocomplete/autocomplete_popup_view_mac.mm +++ b/chrome/browser/autocomplete/autocomplete_popup_view_mac.mm @@ -36,10 +36,11 @@ objectValueForTableColumn:(NSTableColumn*)aTableColumn AutocompletePopupViewMac::AutocompletePopupViewMac( AutocompleteEditViewMac* edit_view, AutocompleteEditModel* edit_model, - Profile* profile) + Profile* profile, + NSTextField* field) : model_(new AutocompletePopupModel(this, edit_model, profile)), edit_view_(edit_view), - field_(nil), + field_(field), table_target_([[AutocompleteTableTarget alloc] initWithPopupView:this]), popup_(nil) { DCHECK(edit_view); |