Index: chrome/browser/ui/gtk/browser_toolbar_gtk.cc |
diff --git a/chrome/browser/ui/gtk/browser_toolbar_gtk.cc b/chrome/browser/ui/gtk/browser_toolbar_gtk.cc |
index ed004becd770de8f9c21cd8f2aa7755ea8586023..a56efe376b78443009ad9e1e38dce5131e339c6f 100644 |
--- a/chrome/browser/ui/gtk/browser_toolbar_gtk.cc |
+++ b/chrome/browser/ui/gtk/browser_toolbar_gtk.cc |
@@ -100,9 +100,7 @@ BrowserToolbarGtk::BrowserToolbarGtk(Browser* browser, BrowserWindowGtk* window) |
location_bar_(new LocationBarViewGtk(browser)), |
is_wrench_menu_model_valid_(true), |
browser_(browser), |
- window_(window), |
- zoom_callback_(base::Bind(&BrowserToolbarGtk::OnZoomLevelChanged, |
- base::Unretained(this))) { |
+ window_(window) { |
wrench_menu_model_.reset(new WrenchMenuModel(this, browser_, false)); |
chrome::AddCommandObserver(browser_, IDC_BACK, this); |
@@ -127,9 +125,6 @@ BrowserToolbarGtk::~BrowserToolbarGtk() { |
offscreen_entry_.Destroy(); |
wrench_menu_.reset(); |
- |
- HostZoomMap::GetForBrowserContext( |
- browser()->profile())->RemoveZoomLevelChangedCallback(zoom_callback_); |
} |
void BrowserToolbarGtk::Init(GtkWindow* top_level_window) { |
@@ -246,8 +241,10 @@ void BrowserToolbarGtk::Init(GtkWindow* top_level_window) { |
// The bookmark menu model needs to be able to force the wrench menu to close. |
wrench_menu_model_->bookmark_sub_menu_model()->SetMenuGtk(wrench_menu_.get()); |
- HostZoomMap::GetForBrowserContext( |
- browser()->profile())->AddZoomLevelChangedCallback(zoom_callback_); |
+ zoom_subscription_ = HostZoomMap::GetForBrowserContext( |
+ browser()->profile())->AddZoomLevelChangedCallback( |
+ base::Bind(&BrowserToolbarGtk::OnZoomLevelChanged, |
+ base::Unretained(this))); |
if (ShouldOnlyShowLocation()) { |
gtk_widget_show(event_box_); |