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

Side by Side Diff: chrome/browser/ui/views/location_bar/location_bar_view.cc

Issue 9479008: Re-factor location bar/toolbar code to get rid of the browser dependency. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: win fix Created 8 years, 9 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/ui/views/location_bar/location_bar_view.h" 5 #include "chrome/browser/ui/views/location_bar/location_bar_view.h"
6 6
7 #if defined(TOOLKIT_USES_GTK) 7 #if defined(TOOLKIT_USES_GTK)
8 #include <gtk/gtk.h> 8 #include <gtk/gtk.h>
9 #endif 9 #endif
10 10
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
108 IDR_LOCATION_BAR_SELECTED_KEYWORD_BACKGROUND_R, 108 IDR_LOCATION_BAR_SELECTED_KEYWORD_BACKGROUND_R,
109 }; 109 };
110 110
111 // Height of the location bar's round corner region. 111 // Height of the location bar's round corner region.
112 static const int kBorderRoundCornerHeight = 6; 112 static const int kBorderRoundCornerHeight = 6;
113 // Width of location bar's round corner region. 113 // Width of location bar's round corner region.
114 static const int kBorderRoundCornerWidth = 5; 114 static const int kBorderRoundCornerWidth = 5;
115 115
116 // LocationBarView ----------------------------------------------------------- 116 // LocationBarView -----------------------------------------------------------
117 117
118 LocationBarView::LocationBarView(Browser* browser, 118 LocationBarView::LocationBarView(Profile* profile,
119 CommandUpdater* command_updater,
119 ToolbarModel* model, 120 ToolbarModel* model,
120 Delegate* delegate, 121 Delegate* delegate,
121 Mode mode) 122 Mode mode)
122 : browser_(browser), 123 : profile_(profile),
124 command_updater_(command_updater),
123 model_(model), 125 model_(model),
124 delegate_(delegate), 126 delegate_(delegate),
125 disposition_(CURRENT_TAB), 127 disposition_(CURRENT_TAB),
126 transition_(content::PageTransitionFromInt( 128 transition_(content::PageTransitionFromInt(
127 content::PAGE_TRANSITION_TYPED | 129 content::PAGE_TRANSITION_TYPED |
128 content::PAGE_TRANSITION_FROM_ADDRESS_BAR)), 130 content::PAGE_TRANSITION_FROM_ADDRESS_BAR)),
129 location_icon_view_(NULL), 131 location_icon_view_(NULL),
130 ev_bubble_view_(NULL), 132 ev_bubble_view_(NULL),
131 location_entry_view_(NULL), 133 location_entry_view_(NULL),
132 selected_keyword_view_(NULL), 134 selected_keyword_view_(NULL),
(...skipping 12 matching lines...) Expand all
145 painter_.reset( 147 painter_.reset(
146 views::Painter::CreateImagePainter( 148 views::Painter::CreateImagePainter(
147 *ResourceBundle::GetSharedInstance().GetImageNamed( 149 *ResourceBundle::GetSharedInstance().GetImageNamed(
148 IDR_LOCATION_BAR_BORDER).ToSkBitmap(), 150 IDR_LOCATION_BAR_BORDER).ToSkBitmap(),
149 gfx::Insets(kBorderRoundCornerHeight, kBorderRoundCornerWidth, 151 gfx::Insets(kBorderRoundCornerHeight, kBorderRoundCornerWidth,
150 kBorderRoundCornerHeight, kBorderRoundCornerWidth), 152 kBorderRoundCornerHeight, kBorderRoundCornerWidth),
151 true)); 153 true));
152 } 154 }
153 155
154 edit_bookmarks_enabled_.Init(prefs::kEditBookmarksEnabled, 156 edit_bookmarks_enabled_.Init(prefs::kEditBookmarksEnabled,
155 browser_->profile()->GetPrefs(), this); 157 profile_->GetPrefs(), this);
156 } 158 }
157 159
158 LocationBarView::~LocationBarView() { 160 LocationBarView::~LocationBarView() {
159 if (template_url_service_) 161 if (template_url_service_)
160 template_url_service_->RemoveObserver(this); 162 template_url_service_->RemoveObserver(this);
161 } 163 }
162 164
163 void LocationBarView::Init() { 165 void LocationBarView::Init() {
164 if (mode_ == POPUP) { 166 if (mode_ == POPUP) {
165 font_ = ResourceBundle::GetSharedInstance().GetFont( 167 font_ = ResourceBundle::GetSharedInstance().GetFont(
166 ResourceBundle::BaseFont); 168 ResourceBundle::BaseFont);
167 } else { 169 } else {
168 // Use a larger version of the system font. 170 // Use a larger version of the system font.
169 font_ = ResourceBundle::GetSharedInstance().GetFont( 171 font_ = ResourceBundle::GetSharedInstance().GetFont(
170 ResourceBundle::MediumFont); 172 ResourceBundle::MediumFont);
171 } 173 }
172 174
173 // If this makes the font too big, try to make it smaller so it will fit. 175 // If this makes the font too big, try to make it smaller so it will fit.
174 const int height = 176 const int height =
175 std::max(GetPreferredSize().height() - (kVerticalEdgeThickness * 2), 0); 177 std::max(GetPreferredSize().height() - (kVerticalEdgeThickness * 2), 0);
176 while ((font_.GetHeight() > height) && (font_.GetFontSize() > 1)) 178 while ((font_.GetHeight() > height) && (font_.GetFontSize() > 1))
177 font_ = font_.DeriveFont(-1); 179 font_ = font_.DeriveFont(-1);
178 180
179 location_icon_view_ = new LocationIconView(this); 181 location_icon_view_ = new LocationIconView(
182 this, delegate_->GetBrowserShowPageInfo());
180 AddChildView(location_icon_view_); 183 AddChildView(location_icon_view_);
181 location_icon_view_->SetVisible(true); 184 location_icon_view_->SetVisible(true);
182 location_icon_view_->set_drag_controller(this); 185 location_icon_view_->set_drag_controller(this);
183 186
184 ev_bubble_view_ = 187 ev_bubble_view_ =
185 new EVBubbleView(kEVBubbleBackgroundImages, IDR_OMNIBOX_HTTPS_VALID, 188 new EVBubbleView(kEVBubbleBackgroundImages, IDR_OMNIBOX_HTTPS_VALID,
186 GetColor(ToolbarModel::EV_SECURE, SECURITY_TEXT), this); 189 GetColor(ToolbarModel::EV_SECURE, SECURITY_TEXT), this,
190 delegate_->GetBrowserShowPageInfo());
187 AddChildView(ev_bubble_view_); 191 AddChildView(ev_bubble_view_);
188 ev_bubble_view_->SetVisible(false); 192 ev_bubble_view_->SetVisible(false);
189 ev_bubble_view_->set_drag_controller(this); 193 ev_bubble_view_->set_drag_controller(this);
190 194
191 // URL edit field. 195 // URL edit field.
192 // View container for URL edit field. 196 // View container for URL edit field.
193 Profile* profile = browser_->profile();
194 location_entry_.reset(OmniboxView::CreateOmniboxView( 197 location_entry_.reset(OmniboxView::CreateOmniboxView(
195 this, 198 this,
196 model_, 199 model_,
197 profile, 200 profile_,
198 browser_->command_updater(), 201 command_updater_,
199 mode_ == POPUP, 202 mode_ == POPUP,
200 this)); 203 this));
201 SetLocationEntryFocusable(true); 204 SetLocationEntryFocusable(true);
202 205
203 location_entry_view_ = location_entry_->AddToView(this); 206 location_entry_view_ = location_entry_->AddToView(this);
204 location_entry_view_->set_id(VIEW_ID_AUTOCOMPLETE); 207 location_entry_view_->set_id(VIEW_ID_AUTOCOMPLETE);
205 208
206 selected_keyword_view_ = new SelectedKeywordView( 209 selected_keyword_view_ = new SelectedKeywordView(
207 kSelectedKeywordBackgroundImages, IDR_KEYWORD_SEARCH_MAGNIFIER, 210 kSelectedKeywordBackgroundImages, IDR_KEYWORD_SEARCH_MAGNIFIER,
208 GetColor(ToolbarModel::NONE, TEXT), profile); 211 GetColor(ToolbarModel::NONE, TEXT), profile_);
209 AddChildView(selected_keyword_view_); 212 AddChildView(selected_keyword_view_);
210 selected_keyword_view_->SetFont(font_); 213 selected_keyword_view_->SetFont(font_);
211 selected_keyword_view_->SetVisible(false); 214 selected_keyword_view_->SetVisible(false);
212 215
213 keyword_hint_view_ = new KeywordHintView(profile); 216 keyword_hint_view_ = new KeywordHintView(profile_);
214 AddChildView(keyword_hint_view_); 217 AddChildView(keyword_hint_view_);
215 keyword_hint_view_->SetVisible(false); 218 keyword_hint_view_->SetVisible(false);
216 keyword_hint_view_->SetFont(font_); 219 keyword_hint_view_->SetFont(font_);
217 220
218 for (int i = 0; i < CONTENT_SETTINGS_NUM_TYPES; ++i) { 221 for (int i = 0; i < CONTENT_SETTINGS_NUM_TYPES; ++i) {
219 ContentSettingImageView* content_blocked_view = 222 ContentSettingImageView* content_blocked_view =
220 new ContentSettingImageView(static_cast<ContentSettingsType>(i), this); 223 new ContentSettingImageView(
224 static_cast<ContentSettingsType>(i),
225 this,
226 delegate_->GetBrowserShowContentRelated());
221 content_setting_views_.push_back(content_blocked_view); 227 content_setting_views_.push_back(content_blocked_view);
222 AddChildView(content_blocked_view); 228 AddChildView(content_blocked_view);
223 content_blocked_view->SetVisible(false); 229 content_blocked_view->SetVisible(false);
224 } 230 }
225 231
226 // The star is not visible in popups and in the app launcher. 232 // The star is not visible in popups and in the app launcher.
227 if (browser_defaults::bookmarks_enabled && (mode_ == NORMAL)) { 233 if (browser_defaults::bookmarks_enabled && (mode_ == NORMAL)) {
228 star_view_ = new StarView(browser_->command_updater()); 234 star_view_ = new StarView(command_updater_);
229 AddChildView(star_view_); 235 AddChildView(star_view_);
230 star_view_->SetVisible(true); 236 star_view_->SetVisible(true);
231 } 237 }
232 238
233 // Initialize the location entry. We do this to avoid a black flash which is 239 // Initialize the location entry. We do this to avoid a black flash which is
234 // visible when the location entry has just been initialized. 240 // visible when the location entry has just been initialized.
235 Update(NULL); 241 Update(NULL);
236 242
237 OnChanged(); 243 OnChanged();
238 } 244 }
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
295 FocusLocation(select_all); 301 FocusLocation(select_all);
296 } 302 }
297 303
298 void LocationBarView::SetAnimationOffset(int offset) { 304 void LocationBarView::SetAnimationOffset(int offset) {
299 animation_offset_ = offset; 305 animation_offset_ = offset;
300 } 306 }
301 307
302 void LocationBarView::Update(const WebContents* tab_for_state_restoring) { 308 void LocationBarView::Update(const WebContents* tab_for_state_restoring) {
303 bool star_enabled = star_view_ && !model_->input_in_progress() && 309 bool star_enabled = star_view_ && !model_->input_in_progress() &&
304 edit_bookmarks_enabled_.GetValue(); 310 edit_bookmarks_enabled_.GetValue();
305 browser_->command_updater()->UpdateCommandEnabled( 311 command_updater_->UpdateCommandEnabled(
306 IDC_BOOKMARK_PAGE, star_enabled); 312 IDC_BOOKMARK_PAGE, star_enabled);
307 if (star_view_) 313 if (star_view_)
308 star_view_->SetVisible(star_enabled); 314 star_view_->SetVisible(star_enabled);
309 RefreshContentSettingViews(); 315 RefreshContentSettingViews();
310 RefreshPageActionViews(); 316 RefreshPageActionViews();
311 // Don't Update in app launcher mode so that the location entry does not show 317 // Don't Update in app launcher mode so that the location entry does not show
312 // a URL or security background. 318 // a URL or security background.
313 if (mode_ != APP_LAUNCHER) 319 if (mode_ != APP_LAUNCHER)
314 location_entry_->Update(tab_for_state_restoring); 320 location_entry_->Update(tab_for_state_restoring);
315 OnChanged(); 321 OnChanged();
316 } 322 }
317 323
324 views::Widget* LocationBarView::CreateViewsBubble(
325 views::BubbleDelegateView* bubble_delegate) {
326 return delegate_->CreateViewsBubble(bubble_delegate);
327 }
328
318 void LocationBarView::UpdateContentSettingsIcons() { 329 void LocationBarView::UpdateContentSettingsIcons() {
319 RefreshContentSettingViews(); 330 RefreshContentSettingViews();
320 331
321 Layout(); 332 Layout();
322 SchedulePaint(); 333 SchedulePaint();
323 } 334 }
324 335
325 void LocationBarView::UpdatePageActions() { 336 void LocationBarView::UpdatePageActions() {
326 size_t count_before = page_action_views_.size(); 337 size_t count_before = page_action_views_.size();
327 RefreshPageActionViews(); 338 RefreshPageActionViews();
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
391 } 402 }
392 return NULL; 403 return NULL;
393 } 404 }
394 405
395 void LocationBarView::SetStarToggled(bool on) { 406 void LocationBarView::SetStarToggled(bool on) {
396 if (star_view_) 407 if (star_view_)
397 star_view_->SetToggled(on); 408 star_view_->SetToggled(on);
398 } 409 }
399 410
400 void LocationBarView::ShowStarBubble(const GURL& url, bool newly_bookmarked) { 411 void LocationBarView::ShowStarBubble(const GURL& url, bool newly_bookmarked) {
401 browser::ShowBookmarkBubbleView(star_view_, browser_->profile(), url, 412 browser::ShowBookmarkBubbleView(star_view_, profile_, url,
402 newly_bookmarked); 413 newly_bookmarked);
403 } 414 }
404 415
405 gfx::Point LocationBarView::GetLocationEntryOrigin() const { 416 gfx::Point LocationBarView::GetLocationEntryOrigin() const {
406 gfx::Point origin(location_entry_view_->bounds().origin()); 417 gfx::Point origin(location_entry_view_->bounds().origin());
407 // If the UI layout is RTL, the coordinate system is not transformed and 418 // If the UI layout is RTL, the coordinate system is not transformed and
408 // therefore we need to adjust the X coordinate so that bubble appears on the 419 // therefore we need to adjust the X coordinate so that bubble appears on the
409 // right hand side of the location bar. 420 // right hand side of the location bar.
410 if (base::i18n::IsRTL()) 421 if (base::i18n::IsRTL())
411 origin.set_x(width() - origin.x()); 422 origin.set_x(width() - origin.x());
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after
557 if (max_edit_width < 0) 568 if (max_edit_width < 0)
558 return; 569 return;
559 const int available_width = AvailableWidth(max_edit_width); 570 const int available_width = AvailableWidth(max_edit_width);
560 571
561 const bool show_keyword_hint = !keyword.empty() && is_keyword_hint; 572 const bool show_keyword_hint = !keyword.empty() && is_keyword_hint;
562 selected_keyword_view_->SetVisible(show_selected_keyword); 573 selected_keyword_view_->SetVisible(show_selected_keyword);
563 keyword_hint_view_->SetVisible(show_keyword_hint); 574 keyword_hint_view_->SetVisible(show_keyword_hint);
564 if (show_selected_keyword) { 575 if (show_selected_keyword) {
565 if (selected_keyword_view_->keyword() != keyword) { 576 if (selected_keyword_view_->keyword() != keyword) {
566 selected_keyword_view_->SetKeyword(keyword); 577 selected_keyword_view_->SetKeyword(keyword);
567 Profile* profile = browser_->profile();
568 const TemplateURL* template_url = 578 const TemplateURL* template_url =
569 TemplateURLServiceFactory::GetForProfile(profile)-> 579 TemplateURLServiceFactory::GetForProfile(profile_)->
570 GetTemplateURLForKeyword(keyword); 580 GetTemplateURLForKeyword(keyword);
571 if (template_url && template_url->IsExtensionKeyword()) { 581 if (template_url && template_url->IsExtensionKeyword()) {
572 const SkBitmap& bitmap = profile->GetExtensionService()->GetOmniboxIcon( 582 const SkBitmap& bitmap =
573 template_url->GetExtensionId()); 583 profile_->GetExtensionService()->GetOmniboxIcon(
584 template_url->GetExtensionId());
574 selected_keyword_view_->SetImage(bitmap); 585 selected_keyword_view_->SetImage(bitmap);
575 selected_keyword_view_->set_is_extension_icon(true); 586 selected_keyword_view_->set_is_extension_icon(true);
576 } else { 587 } else {
577 selected_keyword_view_->SetImage(*ResourceBundle::GetSharedInstance(). 588 selected_keyword_view_->SetImage(*ResourceBundle::GetSharedInstance().
578 GetBitmapNamed(IDR_OMNIBOX_SEARCH)); 589 GetBitmapNamed(IDR_OMNIBOX_SEARCH));
579 selected_keyword_view_->set_is_extension_icon(false); 590 selected_keyword_view_->set_is_extension_icon(false);
580 } 591 }
581 } 592 }
582 } else if (show_keyword_hint) { 593 } else if (show_keyword_hint) {
583 if (keyword_hint_view_->keyword() != keyword) 594 if (keyword_hint_view_->keyword() != keyword)
(...skipping 227 matching lines...) Expand 10 before | Expand all | Expand 10 after
811 content::PageTransition transition, 822 content::PageTransition transition,
812 const GURL& alternate_nav_url) { 823 const GURL& alternate_nav_url) {
813 // WARNING: don't add an early return here. The calls after the if must 824 // WARNING: don't add an early return here. The calls after the if must
814 // happen. 825 // happen.
815 if (url.is_valid()) { 826 if (url.is_valid()) {
816 location_input_ = UTF8ToUTF16(url.spec()); 827 location_input_ = UTF8ToUTF16(url.spec());
817 disposition_ = disposition; 828 disposition_ = disposition;
818 transition_ = content::PageTransitionFromInt( 829 transition_ = content::PageTransitionFromInt(
819 transition | content::PAGE_TRANSITION_FROM_ADDRESS_BAR); 830 transition | content::PAGE_TRANSITION_FROM_ADDRESS_BAR);
820 831
821 if (browser_->command_updater()) { 832 if (command_updater_) {
822 if (!alternate_nav_url.is_valid()) { 833 if (!alternate_nav_url.is_valid()) {
823 browser_->command_updater()->ExecuteCommand(IDC_OPEN_CURRENT_URL); 834 command_updater_->ExecuteCommand(IDC_OPEN_CURRENT_URL);
824 } else { 835 } else {
825 AlternateNavURLFetcher* fetcher = 836 AlternateNavURLFetcher* fetcher =
826 new AlternateNavURLFetcher(alternate_nav_url); 837 new AlternateNavURLFetcher(alternate_nav_url);
827 // The AlternateNavURLFetcher will listen for the pending navigation 838 // The AlternateNavURLFetcher will listen for the pending navigation
828 // notification that will be issued as a result of the "open URL." It 839 // notification that will be issued as a result of the "open URL." It
829 // will automatically install itself into that navigation controller. 840 // will automatically install itself into that navigation controller.
830 browser_->command_updater()->ExecuteCommand(IDC_OPEN_CURRENT_URL); 841 command_updater_->ExecuteCommand(IDC_OPEN_CURRENT_URL);
831 if (fetcher->state() == AlternateNavURLFetcher::NOT_STARTED) { 842 if (fetcher->state() == AlternateNavURLFetcher::NOT_STARTED) {
832 // I'm not sure this should be reachable, but I'm not also sure enough 843 // I'm not sure this should be reachable, but I'm not also sure enough
833 // that it shouldn't to stick in a NOTREACHED(). In any case, this is 844 // that it shouldn't to stick in a NOTREACHED(). In any case, this is
834 // harmless. 845 // harmless.
835 delete fetcher; 846 delete fetcher;
836 } else { 847 } else {
837 // The navigation controller will delete the fetcher. 848 // The navigation controller will delete the fetcher.
838 } 849 }
839 } 850 }
840 } 851 }
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
927 for (PageActionViews::const_iterator i(page_action_views_.begin()); 938 for (PageActionViews::const_iterator i(page_action_views_.begin());
928 i != page_action_views_.end(); ++i) 939 i != page_action_views_.end(); ++i)
929 RemoveChildView(*i); 940 RemoveChildView(*i);
930 STLDeleteElements(&page_action_views_); 941 STLDeleteElements(&page_action_views_);
931 } 942 }
932 943
933 void LocationBarView::RefreshPageActionViews() { 944 void LocationBarView::RefreshPageActionViews() {
934 if (mode_ != NORMAL) 945 if (mode_ != NORMAL)
935 return; 946 return;
936 947
937 ExtensionService* service = browser_->profile()->GetExtensionService(); 948 ExtensionService* service = profile_->GetExtensionService();
938 if (!service) 949 if (!service)
939 return; 950 return;
940 951
941 std::map<ExtensionAction*, bool> old_visibility; 952 std::map<ExtensionAction*, bool> old_visibility;
942 for (PageActionViews::const_iterator i(page_action_views_.begin()); 953 for (PageActionViews::const_iterator i(page_action_views_.begin());
943 i != page_action_views_.end(); ++i) 954 i != page_action_views_.end(); ++i)
944 old_visibility[(*i)->image_view()->page_action()] = (*i)->visible(); 955 old_visibility[(*i)->image_view()->page_action()] = (*i)->visible();
945 956
946 // Remember the previous visibility of the page actions so that we can 957 // Remember the previous visibility of the page actions so that we can
947 // notify when this changes. 958 // notify when this changes.
948 std::vector<ExtensionAction*> page_actions; 959 std::vector<ExtensionAction*> page_actions;
949 for (ExtensionSet::const_iterator it = service->extensions()->begin(); 960 for (ExtensionSet::const_iterator it = service->extensions()->begin();
950 it != service->extensions()->end(); ++it) { 961 it != service->extensions()->end(); ++it) {
951 if ((*it)->page_action()) 962 if ((*it)->page_action())
952 page_actions.push_back((*it)->page_action()); 963 page_actions.push_back((*it)->page_action());
953 } 964 }
954 965
955 // On startup we sometimes haven't loaded any extensions. This makes sure 966 // On startup we sometimes haven't loaded any extensions. This makes sure
956 // we catch up when the extensions (and any page actions) load. 967 // we catch up when the extensions (and any page actions) load.
957 if (page_actions.size() != page_action_views_.size()) { 968 if (page_actions.size() != page_action_views_.size()) {
958 DeletePageActionViews(); // Delete the old views (if any). 969 DeletePageActionViews(); // Delete the old views (if any).
959 970
960 page_action_views_.resize(page_actions.size()); 971 page_action_views_.resize(page_actions.size());
961 972
962 // Add the page actions in reverse order, so that the child views are 973 // Add the page actions in reverse order, so that the child views are
963 // inserted in left-to-right order for accessibility. 974 // inserted in left-to-right order for accessibility.
964 for (int i = page_actions.size() - 1; i >= 0; --i) { 975 for (int i = page_actions.size() - 1; i >= 0; --i) {
965 page_action_views_[i] = new PageActionWithBadgeView( 976 page_action_views_[i] = new PageActionWithBadgeView(
966 new PageActionImageView(this, page_actions[i])); 977 delegate_->CreatePageActionImageView(this, page_actions[i]));
967 page_action_views_[i]->SetVisible(false); 978 page_action_views_[i]->SetVisible(false);
968 AddChildViewAt(page_action_views_[i], GetIndexOf(star_view_)); 979 AddChildViewAt(page_action_views_[i], GetIndexOf(star_view_));
969 } 980 }
970 } 981 }
971 982
972 WebContents* contents = GetWebContentsFromDelegate(delegate_); 983 WebContents* contents = GetWebContentsFromDelegate(delegate_);
973 if (!page_action_views_.empty() && contents) { 984 if (!page_action_views_.empty() && contents) {
974 GURL url = GURL(model_->GetText()); 985 GURL url = GURL(model_->GetText());
975 986
976 for (PageActionViews::const_iterator i(page_action_views_.begin()); 987 for (PageActionViews::const_iterator i(page_action_views_.begin());
(...skipping 22 matching lines...) Expand all
999 if (views::Widget::IsPureViews()) 1010 if (views::Widget::IsPureViews())
1000 NOTIMPLEMENTED(); 1011 NOTIMPLEMENTED();
1001 else 1012 else
1002 GetOmniboxViewWin()->HandleExternalMsg(msg, flags, screen_point.ToPOINT()); 1013 GetOmniboxViewWin()->HandleExternalMsg(msg, flags, screen_point.ToPOINT());
1003 } 1014 }
1004 #endif 1015 #endif
1005 1016
1006 void LocationBarView::ShowFirstRunBubbleInternal() { 1017 void LocationBarView::ShowFirstRunBubbleInternal() {
1007 #if !defined(OS_CHROMEOS) 1018 #if !defined(OS_CHROMEOS)
1008 // First run bubble doesn't make sense for Chrome OS. 1019 // First run bubble doesn't make sense for Chrome OS.
1009 FirstRunBubble::ShowBubble(browser_->profile(), location_icon_view_); 1020 FirstRunBubble::ShowBubble(profile_, location_icon_view_);
1010 #endif 1021 #endif
1011 } 1022 }
1012 1023
1013 std::string LocationBarView::GetClassName() const { 1024 std::string LocationBarView::GetClassName() const {
1014 return kViewClassName; 1025 return kViewClassName;
1015 } 1026 }
1016 1027
1017 bool LocationBarView::SkipDefaultKeyEventProcessing( 1028 bool LocationBarView::SkipDefaultKeyEventProcessing(
1018 const views::KeyEvent& event) { 1029 const views::KeyEvent& event) {
1019 #if defined(OS_WIN) 1030 #if defined(OS_WIN)
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
1089 const gfx::Point& p) { 1100 const gfx::Point& p) {
1090 return true; 1101 return true;
1091 } 1102 }
1092 1103
1093 //////////////////////////////////////////////////////////////////////////////// 1104 ////////////////////////////////////////////////////////////////////////////////
1094 // LocationBarView, LocationBar implementation: 1105 // LocationBarView, LocationBar implementation:
1095 1106
1096 void LocationBarView::ShowFirstRunBubble() { 1107 void LocationBarView::ShowFirstRunBubble() {
1097 // Wait until search engines have loaded to show the first run bubble. 1108 // Wait until search engines have loaded to show the first run bubble.
1098 TemplateURLService* url_service = 1109 TemplateURLService* url_service =
1099 TemplateURLServiceFactory::GetForProfile(browser_->profile()); 1110 TemplateURLServiceFactory::GetForProfile(profile_);
1100 if (!url_service->loaded()) { 1111 if (!url_service->loaded()) {
1101 template_url_service_ = url_service; 1112 template_url_service_ = url_service;
1102 template_url_service_->AddObserver(this); 1113 template_url_service_->AddObserver(this);
1103 template_url_service_->Load(); 1114 template_url_service_->Load();
1104 return; 1115 return;
1105 } 1116 }
1106 ShowFirstRunBubbleInternal(); 1117 ShowFirstRunBubbleInternal();
1107 } 1118 }
1108 1119
1109 void LocationBarView::SetSuggestedText(const string16& text, 1120 void LocationBarView::SetSuggestedText(const string16& text,
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after
1236 !suggested_text_view_->GetText().empty(); 1247 !suggested_text_view_->GetText().empty();
1237 } 1248 }
1238 1249
1239 #if !defined(USE_AURA) 1250 #if !defined(USE_AURA)
1240 OmniboxViewWin* LocationBarView::GetOmniboxViewWin() { 1251 OmniboxViewWin* LocationBarView::GetOmniboxViewWin() {
1241 CHECK(!views::Widget::IsPureViews()); 1252 CHECK(!views::Widget::IsPureViews());
1242 return static_cast<OmniboxViewWin*>(location_entry_.get()); 1253 return static_cast<OmniboxViewWin*>(location_entry_.get());
1243 } 1254 }
1244 #endif 1255 #endif
1245 #endif 1256 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698