diff options
Diffstat (limited to 'chrome/browser/gtk/browser_toolbar_gtk.cc')
-rw-r--r-- | chrome/browser/gtk/browser_toolbar_gtk.cc | 63 |
1 files changed, 8 insertions, 55 deletions
diff --git a/chrome/browser/gtk/browser_toolbar_gtk.cc b/chrome/browser/gtk/browser_toolbar_gtk.cc index 30115f3..a3cd9cd 100644 --- a/chrome/browser/gtk/browser_toolbar_gtk.cc +++ b/chrome/browser/gtk/browser_toolbar_gtk.cc @@ -29,11 +29,11 @@ #include "chrome/browser/gtk/browser_window_gtk.h" #include "chrome/browser/gtk/cairo_cached_surface.h" #include "chrome/browser/gtk/custom_button.h" -#include "chrome/browser/gtk/go_button_gtk.h" #include "chrome/browser/gtk/gtk_chrome_button.h" #include "chrome/browser/gtk/gtk_theme_provider.h" #include "chrome/browser/gtk/gtk_util.h" #include "chrome/browser/gtk/location_bar_view_gtk.h" +#include "chrome/browser/gtk/reload_button_gtk.h" #include "chrome/browser/gtk/rounded_window.h" #include "chrome/browser/gtk/tabs/tab_strip_gtk.h" #include "chrome/browser/gtk/view_id_util.h" @@ -97,7 +97,6 @@ BrowserToolbarGtk::BrowserToolbarGtk(Browser* browser, BrowserWindowGtk* window) upgrade_reminder_animation_(this) { browser_->command_updater()->AddCommandObserver(IDC_BACK, this); browser_->command_updater()->AddCommandObserver(IDC_FORWARD, this); - browser_->command_updater()->AddCommandObserver(IDC_RELOAD, this); browser_->command_updater()->AddCommandObserver(IDC_HOME, this); browser_->command_updater()->AddCommandObserver(IDC_BOOKMARK_PAGE, this); @@ -117,7 +116,6 @@ BrowserToolbarGtk::BrowserToolbarGtk(Browser* browser, BrowserWindowGtk* window) BrowserToolbarGtk::~BrowserToolbarGtk() { browser_->command_updater()->RemoveCommandObserver(IDC_BACK, this); browser_->command_updater()->RemoveCommandObserver(IDC_FORWARD, this); - browser_->command_updater()->RemoveCommandObserver(IDC_RELOAD, this); browser_->command_updater()->RemoveCommandObserver(IDC_HOME, this); browser_->command_updater()->RemoveCommandObserver(IDC_BOOKMARK_PAGE, this); @@ -174,17 +172,16 @@ void BrowserToolbarGtk::Init(Profile* profile, gtk_box_pack_start(GTK_BOX(toolbar_left_), back_forward_hbox_, FALSE, FALSE, kToolbarWidgetSpacing); + reload_.reset(new ReloadButtonGtk(location_bar_.get(), browser_)); + gtk_box_pack_start(GTK_BOX(toolbar_left_), reload_->widget(), FALSE, FALSE, + 0); + home_.reset(BuildToolbarButton(IDR_HOME, IDR_HOME_P, IDR_HOME_H, 0, IDR_BUTTON_MASK, l10n_util::GetStringUTF8(IDS_TOOLTIP_HOME), GTK_STOCK_HOME, kToolbarWidgetSpacing)); gtk_util::SetButtonTriggersNavigation(home_->widget()); - reload_.reset(BuildToolbarButton(IDR_RELOAD, IDR_RELOAD_P, IDR_RELOAD_H, 0, - IDR_RELOAD_MASK, - l10n_util::GetStringUTF8(IDS_TOOLTIP_RELOAD), - GTK_STOCK_REFRESH, 0)); - gtk_box_pack_start(GTK_BOX(toolbar_), toolbar_left_, FALSE, FALSE, 0); location_hbox_ = gtk_hbox_new(FALSE, 0); @@ -199,9 +196,6 @@ void BrowserToolbarGtk::Init(Profile* profile, toolbar_right_ = gtk_hbox_new(FALSE, 0); - go_.reset(new GoButtonGtk(location_bar_.get(), browser_)); - gtk_box_pack_start(GTK_BOX(toolbar_right_), go_->widget(), FALSE, FALSE, 0); - if (!ShouldOnlyShowLocation()) { actions_toolbar_.reset(new BrowserActionsToolbarGtk(browser_)); gtk_box_pack_start(GTK_BOX(toolbar_right_), actions_toolbar_->widget(), @@ -255,7 +249,6 @@ void BrowserToolbarGtk::Init(Profile* profile, gtk_widget_show(toolbar_); gtk_widget_show_all(location_hbox_); gtk_widget_hide(reload_->widget()); - gtk_widget_hide(go_->widget()); } else { gtk_widget_show_all(event_box_); if (actions_toolbar_->button_count() == 0) @@ -279,7 +272,6 @@ void BrowserToolbarGtk::SetViewIDs() { ViewIDUtil::SetID(reload_->widget(), VIEW_ID_RELOAD_BUTTON); ViewIDUtil::SetID(home_->widget(), VIEW_ID_HOME_BUTTON); ViewIDUtil::SetID(location_bar_->widget(), VIEW_ID_LOCATION_BAR); - ViewIDUtil::SetID(go_->widget(), VIEW_ID_GO_BUTTON); if (page_menu_button_.get()) ViewIDUtil::SetID(page_menu_button_.get(), VIEW_ID_PAGE_MENU); ViewIDUtil::SetID(app_menu_button_.get(), VIEW_ID_APP_MENU); @@ -325,12 +317,6 @@ void BrowserToolbarGtk::EnabledStateChangedForCommand(int id, bool enabled) { case IDC_FORWARD: widget = forward_->widget(); break; - case IDC_RELOAD: - widget = reload_->widget(); - break; - case IDC_GO: - widget = go_->widget(); - break; case IDC_HOME: if (home_.get()) widget = home_->widget(); @@ -430,19 +416,6 @@ void BrowserToolbarGtk::Observe(NotificationType type, gtk_image_set_from_pixbuf(GTK_IMAGE(app_menu_image_), theme_provider_->GetRTLEnabledPixbufNamed(IDR_MENU_CHROME)); - // Update the spacing between the reload button and the location bar. - gtk_box_set_child_packing( - GTK_BOX(toolbar_), reload_->widget(), - FALSE, FALSE, - theme_provider_->UseGtkTheme() ? kToolbarWidgetSpacing : 0, - GTK_PACK_START); - gtk_box_set_child_packing( - GTK_BOX(toolbar_), location_hbox_, - TRUE, TRUE, - (theme_provider_->UseGtkTheme() ? kToolbarWidgetSpacing : 0) + - (ShouldOnlyShowLocation() ? 1 : 0), - GTK_PACK_START); - // Force the height of the toolbar so we get the right amount of padding // above and below the location bar. We always force the size of the hboxes // to either side of the location box, but we only force the location box @@ -705,29 +678,9 @@ void BrowserToolbarGtk::OnButtonClick(GtkWidget* button) { return; } - int command = -1; - GdkModifierType modifier_state; - gtk_get_current_event_state(&modifier_state); - guint modifier_state_uint = modifier_state; - if (button == reload_->widget()) { - if (modifier_state_uint & GDK_SHIFT_MASK) { - command = IDC_RELOAD_IGNORING_CACHE; - // Mask off shift so it isn't interpreted as affecting the disposition - // below. - modifier_state_uint &= ~GDK_SHIFT_MASK; - } else { - command = IDC_RELOAD; - } - if (event_utils::DispositionFromEventFlags(modifier_state_uint) == - CURRENT_TAB) - location_bar_->Revert(); - } else if (home_.get() && button == home_->widget()) { - command = IDC_HOME; - } - - DCHECK_NE(command, -1) << "Unexpected button click callback"; - browser_->ExecuteCommandWithDisposition(command, - event_utils::DispositionFromEventFlags(modifier_state_uint)); + DCHECK(home_.get() && button == home_->widget()) << + "Unexpected button click callback"; + browser_->Home(gtk_util::DispositionForCurrentButtonPressEvent()); } gboolean BrowserToolbarGtk::OnMenuButtonPressEvent(GtkWidget* button, |