Chromium Code Reviews| 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 { |