Index: chrome/browser/ui/views/toolbar/toolbar_view.cc |
diff --git a/chrome/browser/ui/views/toolbar/toolbar_view.cc b/chrome/browser/ui/views/toolbar/toolbar_view.cc |
index d1624fcd5b4158d8c7e07c5873429a433d16dd82..6b9954031b9980374bbb10fd8c199398035464c4 100644 |
--- a/chrome/browser/ui/views/toolbar/toolbar_view.cc |
+++ b/chrome/browser/ui/views/toolbar/toolbar_view.cc |
@@ -122,15 +122,18 @@ const char ToolbarView::kViewClassName[] = "ToolbarView"; |
// ToolbarView, public: |
ToolbarView::ToolbarView(Browser* browser) |
- : back_(NULL), |
- forward_(NULL), |
- reload_(NULL), |
- home_(NULL), |
- location_bar_(NULL), |
- browser_actions_(NULL), |
- app_menu_button_(NULL), |
+ : back_(nullptr), |
+ forward_(nullptr), |
+ reload_(nullptr), |
+ home_(nullptr), |
+ location_bar_(nullptr), |
+ browser_actions_(nullptr), |
+ app_menu_button_(nullptr), |
browser_(browser), |
- badge_controller_(browser->profile(), this) { |
+ badge_controller_(browser->profile(), this), |
+ display_mode_(browser->SupportsWindowFeature(Browser::FEATURE_TABSTRIP) |
+ ? DISPLAYMODE_NORMAL |
+ : DISPLAYMODE_LOCATION) { |
set_id(VIEW_ID_TOOLBAR); |
SetEventTargeter( |
@@ -142,10 +145,6 @@ ToolbarView::ToolbarView(Browser* browser) |
chrome::AddCommandObserver(browser_, IDC_HOME, this); |
chrome::AddCommandObserver(browser_, IDC_LOAD_NEW_TAB_PAGE, this); |
- display_mode_ = DISPLAYMODE_LOCATION; |
- if (browser->SupportsWindowFeature(Browser::FEATURE_TABSTRIP)) |
- display_mode_ = DISPLAYMODE_NORMAL; |
- |
if (OutdatedUpgradeBubbleView::IsAvailable()) { |
registrar_.Add(this, chrome::NOTIFICATION_OUTDATED_INSTALL, |
content::NotificationService::AllSources()); |
@@ -165,6 +164,17 @@ ToolbarView::~ToolbarView() { |
} |
void ToolbarView::Init() { |
+ location_bar_ = new LocationBarView( |
+ browser_, browser_->profile(), |
+ browser_->command_controller()->command_updater(), this, |
+ !is_display_mode_normal()); |
+ |
+ if (!is_display_mode_normal()) { |
+ AddChildView(location_bar_); |
+ location_bar_->Init(); |
+ return; |
+ } |
+ |
GetWidget()->AddObserver(this); |
Peter Kasting
2016/02/03 00:02:08
Don't we still need to do this? It seems like wit
Evan Stade
2016/02/03 00:04:36
+Devlin to answer that
I kind of assumed that if
Devlin
2016/02/03 01:02:41
Yes, it works, and ideally, yes, it should be pres
Evan Stade
2016/02/03 01:21:44
do you have an example of an extension that uses t
Devlin
2016/02/03 02:50:43
Any extension can have a keybinding associated wit
|
back_ = new BackButton( |
@@ -189,11 +199,6 @@ void ToolbarView::Init() { |
forward_->set_id(VIEW_ID_FORWARD_BUTTON); |
forward_->Init(); |
- location_bar_ = new LocationBarView( |
- browser_, browser_->profile(), |
- browser_->command_controller()->command_updater(), this, |
- display_mode_ == DISPLAYMODE_LOCATION); |
- |
reload_ = new ReloadButton(browser_->profile(), |
browser_->command_controller()->command_updater()); |
reload_->set_triggerable_event_flags( |
@@ -489,7 +494,7 @@ gfx::Size ToolbarView::GetMinimumSize() const { |
void ToolbarView::Layout() { |
// If we have not been initialized yet just do nothing. |
- if (back_ == NULL) |
+ if (!location_bar_) |
return; |
if (!is_display_mode_normal()) { |
@@ -598,7 +603,8 @@ void ToolbarView::Layout() { |
} |
void ToolbarView::OnThemeChanged() { |
- LoadImages(); |
+ if (is_display_mode_normal()) |
+ LoadImages(); |
} |
const char* ToolbarView::GetClassName() const { |