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

Side by Side Diff: chrome/browser/ui/views/toolbar_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: ut 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/toolbar_view.h" 5 #include "chrome/browser/ui/views/toolbar_view.h"
6 6
7 #include "base/i18n/number_formatting.h" 7 #include "base/i18n/number_formatting.h"
8 #include "base/utf_string_conversions.h" 8 #include "base/utf_string_conversions.h"
9 #include "chrome/app/chrome_command_ids.h" 9 #include "chrome/app/chrome_command_ids.h"
10 #include "chrome/browser/prefs/pref_service.h" 10 #include "chrome/browser/prefs/pref_service.h"
11 #include "chrome/browser/profiles/profile.h" 11 #include "chrome/browser/profiles/profile.h"
12 #include "chrome/browser/ui/browser.h" 12 #include "chrome/browser/ui/browser.h"
13 #include "chrome/browser/ui/browser_content_setting_bubble_model_delegate.h"
13 #include "chrome/browser/ui/browser_window.h" 14 #include "chrome/browser/ui/browser_window.h"
14 #include "chrome/browser/ui/global_error_service.h" 15 #include "chrome/browser/ui/global_error_service.h"
15 #include "chrome/browser/ui/global_error_service_factory.h" 16 #include "chrome/browser/ui/global_error_service_factory.h"
16 #include "chrome/browser/ui/toolbar/wrench_menu_model.h" 17 #include "chrome/browser/ui/toolbar/wrench_menu_model.h"
17 #include "chrome/browser/ui/view_ids.h" 18 #include "chrome/browser/ui/view_ids.h"
18 #include "chrome/browser/ui/views/browser_actions_container.h" 19 #include "chrome/browser/ui/views/browser_actions_container.h"
19 #include "chrome/browser/ui/views/event_utils.h" 20 #include "chrome/browser/ui/views/event_utils.h"
21 #include "chrome/browser/ui/views/location_bar/page_action_image_view.h"
20 #include "chrome/browser/ui/views/window.h" 22 #include "chrome/browser/ui/views/window.h"
21 #include "chrome/browser/ui/views/wrench_menu.h" 23 #include "chrome/browser/ui/views/wrench_menu.h"
22 #include "chrome/browser/upgrade_detector.h" 24 #include "chrome/browser/upgrade_detector.h"
23 #include "chrome/common/chrome_notification_types.h" 25 #include "chrome/common/chrome_notification_types.h"
24 #include "chrome/common/pref_names.h" 26 #include "chrome/common/pref_names.h"
25 #include "content/public/browser/browser_accessibility_state.h" 27 #include "content/public/browser/browser_accessibility_state.h"
26 #include "content/public/browser/notification_service.h" 28 #include "content/public/browser/notification_service.h"
27 #include "content/public/browser/user_metrics.h" 29 #include "content/public/browser/user_metrics.h"
28 #include "grit/chromium_strings.h" 30 #include "grit/chromium_strings.h"
29 #include "grit/generated_resources.h" 31 #include "grit/generated_resources.h"
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after
149 151
150 forward_ = new views::ButtonDropDown(this, forward_menu_model_.get()); 152 forward_ = new views::ButtonDropDown(this, forward_menu_model_.get());
151 forward_->set_triggerable_event_flags(ui::EF_LEFT_MOUSE_BUTTON | 153 forward_->set_triggerable_event_flags(ui::EF_LEFT_MOUSE_BUTTON |
152 ui::EF_MIDDLE_MOUSE_BUTTON); 154 ui::EF_MIDDLE_MOUSE_BUTTON);
153 forward_->set_tag(IDC_FORWARD); 155 forward_->set_tag(IDC_FORWARD);
154 forward_->SetTooltipText(l10n_util::GetStringUTF16(IDS_TOOLTIP_FORWARD)); 156 forward_->SetTooltipText(l10n_util::GetStringUTF16(IDS_TOOLTIP_FORWARD));
155 forward_->SetAccessibleName(l10n_util::GetStringUTF16(IDS_ACCNAME_FORWARD)); 157 forward_->SetAccessibleName(l10n_util::GetStringUTF16(IDS_ACCNAME_FORWARD));
156 forward_->set_id(VIEW_ID_FORWARD_BUTTON); 158 forward_->set_id(VIEW_ID_FORWARD_BUTTON);
157 159
158 // Have to create this before |reload_| as |reload_|'s constructor needs it. 160 // Have to create this before |reload_| as |reload_|'s constructor needs it.
159 location_bar_ = new LocationBarView(browser_, model_, this, 161 location_bar_ = new LocationBarView(
162 browser_->profile(),
163 browser_->command_updater(),
164 model_,
165 this,
160 (display_mode_ == DISPLAYMODE_LOCATION) ? 166 (display_mode_ == DISPLAYMODE_LOCATION) ?
161 LocationBarView::POPUP : LocationBarView::NORMAL); 167 LocationBarView::POPUP : LocationBarView::NORMAL);
162 168
163 reload_ = new ReloadButton(location_bar_, browser_); 169 reload_ = new ReloadButton(location_bar_, browser_->command_updater());
164 reload_->set_triggerable_event_flags(ui::EF_LEFT_MOUSE_BUTTON | 170 reload_->set_triggerable_event_flags(ui::EF_LEFT_MOUSE_BUTTON |
165 ui::EF_MIDDLE_MOUSE_BUTTON); 171 ui::EF_MIDDLE_MOUSE_BUTTON);
166 reload_->set_tag(IDC_RELOAD); 172 reload_->set_tag(IDC_RELOAD);
167 reload_->SetTooltipText(l10n_util::GetStringUTF16(IDS_TOOLTIP_RELOAD)); 173 reload_->SetTooltipText(l10n_util::GetStringUTF16(IDS_TOOLTIP_RELOAD));
168 reload_->SetAccessibleName(l10n_util::GetStringUTF16(IDS_ACCNAME_RELOAD)); 174 reload_->SetAccessibleName(l10n_util::GetStringUTF16(IDS_ACCNAME_RELOAD));
169 reload_->set_id(VIEW_ID_RELOAD_BUTTON); 175 reload_->set_id(VIEW_ID_RELOAD_BUTTON);
170 176
171 home_ = new views::ImageButton(this); 177 home_ = new views::ImageButton(this);
172 home_->set_triggerable_event_flags(ui::EF_LEFT_MOUSE_BUTTON | 178 home_->set_triggerable_event_flags(ui::EF_LEFT_MOUSE_BUTTON |
173 ui::EF_MIDDLE_MOUSE_BUTTON); 179 ui::EF_MIDDLE_MOUSE_BUTTON);
(...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after
345 // ToolbarView, LocationBarView::Delegate implementation: 351 // ToolbarView, LocationBarView::Delegate implementation:
346 352
347 TabContentsWrapper* ToolbarView::GetTabContentsWrapper() const { 353 TabContentsWrapper* ToolbarView::GetTabContentsWrapper() const {
348 return browser_->GetSelectedTabContentsWrapper(); 354 return browser_->GetSelectedTabContentsWrapper();
349 } 355 }
350 356
351 InstantController* ToolbarView::GetInstant() { 357 InstantController* ToolbarView::GetInstant() {
352 return browser_->instant(); 358 return browser_->instant();
353 } 359 }
354 360
361 ContentSettingBubbleModelDelegate*
362 ToolbarView::GetContentSettingBubbleModelDelegate() {
363 return browser_->content_setting_bubble_model_delegate();
364 }
365
366 void ToolbarView::ShowPageInfo(content::WebContents* web_contents,
367 const GURL& url,
368 const content::SSLStatus& ssl,
369 bool show_history) {
370 browser_->ShowPageInfo(web_contents, url, ssl, show_history);
371 }
372
373 views::Widget* ToolbarView::CreateViewsBubble(
374 views::BubbleDelegateView* bubble_delegate) {
375 return browser::CreateViewsBubble(bubble_delegate);
376 }
377
378 PageActionImageView* ToolbarView::CreatePageActionImageView(
379 LocationBarView* owner, ExtensionAction* action) {
380 return new PageActionImageView(owner, action, browser_);
381 }
382
355 void ToolbarView::OnInputInProgress(bool in_progress) { 383 void ToolbarView::OnInputInProgress(bool in_progress) {
356 // The edit should make sure we're only notified when something changes. 384 // The edit should make sure we're only notified when something changes.
357 DCHECK(model_->input_in_progress() != in_progress); 385 DCHECK(model_->input_in_progress() != in_progress);
358 386
359 model_->set_input_in_progress(in_progress); 387 model_->set_input_in_progress(in_progress);
360 location_bar_->Update(NULL); 388 location_bar_->Update(NULL);
361 } 389 }
362 390
363 //////////////////////////////////////////////////////////////////////////////// 391 ////////////////////////////////////////////////////////////////////////////////
364 // ToolbarView, CommandUpdater::CommandObserver implementation: 392 // ToolbarView, CommandUpdater::CommandObserver implementation:
(...skipping 368 matching lines...) Expand 10 before | Expand all | Expand 10 after
733 accname_app = l10n_util::GetStringFUTF16( 761 accname_app = l10n_util::GetStringFUTF16(
734 IDS_ACCNAME_APP_UPGRADE_RECOMMENDED, accname_app); 762 IDS_ACCNAME_APP_UPGRADE_RECOMMENDED, accname_app);
735 } 763 }
736 app_menu_->SetAccessibleName(accname_app); 764 app_menu_->SetAccessibleName(accname_app);
737 765
738 app_menu_->SetIcon(GetAppMenuIcon(views::CustomButton::BS_NORMAL)); 766 app_menu_->SetIcon(GetAppMenuIcon(views::CustomButton::BS_NORMAL));
739 app_menu_->SetHoverIcon(GetAppMenuIcon(views::CustomButton::BS_HOT)); 767 app_menu_->SetHoverIcon(GetAppMenuIcon(views::CustomButton::BS_HOT));
740 app_menu_->SetPushedIcon(GetAppMenuIcon(views::CustomButton::BS_PUSHED)); 768 app_menu_->SetPushedIcon(GetAppMenuIcon(views::CustomButton::BS_PUSHED));
741 SchedulePaint(); 769 SchedulePaint();
742 } 770 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698