| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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/zoom/chrome_zoom_level_otr_delegate.h" | 5 #include "chrome/browser/ui/zoom/chrome_zoom_level_otr_delegate.h" |
| 6 | 6 |
| 7 #include "base/bind.h" | 7 #include "base/bind.h" |
| 8 #include "chrome/browser/ui/zoom/zoom_event_manager.h" | 8 #include "components/ui/zoom/zoom_event_manager.h" |
| 9 | 9 |
| 10 namespace chrome { | 10 namespace chrome { |
| 11 | 11 |
| 12 ChromeZoomLevelOTRDelegate::ChromeZoomLevelOTRDelegate( | 12 ChromeZoomLevelOTRDelegate::ChromeZoomLevelOTRDelegate( |
| 13 base::WeakPtr<ZoomEventManager> zoom_event_manager) | 13 base::WeakPtr<ui_zoom::ZoomEventManager> zoom_event_manager) |
| 14 : zoom_event_manager_(zoom_event_manager), | 14 : zoom_event_manager_(zoom_event_manager), host_zoom_map_(nullptr) { |
| 15 host_zoom_map_(nullptr) { | |
| 16 } | 15 } |
| 17 | 16 |
| 18 ChromeZoomLevelOTRDelegate::~ChromeZoomLevelOTRDelegate() { | 17 ChromeZoomLevelOTRDelegate::~ChromeZoomLevelOTRDelegate() { |
| 19 } | 18 } |
| 20 | 19 |
| 21 void ChromeZoomLevelOTRDelegate::InitHostZoomMap( | 20 void ChromeZoomLevelOTRDelegate::InitHostZoomMap( |
| 22 content::HostZoomMap* host_zoom_map) { | 21 content::HostZoomMap* host_zoom_map) { |
| 23 // This init function must be called only once. | 22 // This init function must be called only once. |
| 24 DCHECK(!host_zoom_map_); | 23 DCHECK(!host_zoom_map_); |
| 25 DCHECK(host_zoom_map); | 24 DCHECK(host_zoom_map); |
| 26 host_zoom_map_ = host_zoom_map; | 25 host_zoom_map_ = host_zoom_map; |
| 27 | 26 |
| 28 zoom_subscription_ = host_zoom_map_->AddZoomLevelChangedCallback(base::Bind( | 27 zoom_subscription_ = host_zoom_map_->AddZoomLevelChangedCallback(base::Bind( |
| 29 &ChromeZoomLevelOTRDelegate::OnZoomLevelChanged, base::Unretained(this))); | 28 &ChromeZoomLevelOTRDelegate::OnZoomLevelChanged, base::Unretained(this))); |
| 30 } | 29 } |
| 31 | 30 |
| 32 void ChromeZoomLevelOTRDelegate::OnZoomLevelChanged( | 31 void ChromeZoomLevelOTRDelegate::OnZoomLevelChanged( |
| 33 const content::HostZoomMap::ZoomLevelChange& change) { | 32 const content::HostZoomMap::ZoomLevelChange& change) { |
| 34 // If there's a manager to aggregate ZoomLevelChanged events, pass this event | 33 // If there's a manager to aggregate ZoomLevelChanged events, pass this event |
| 35 // along. Since we already hold a subscription to our associated HostZoomMap, | 34 // along. Since we already hold a subscription to our associated HostZoomMap, |
| 36 // we don't need to create a separate subscription for this. | 35 // we don't need to create a separate subscription for this. |
| 37 if (zoom_event_manager_) | 36 if (zoom_event_manager_) |
| 38 zoom_event_manager_->OnZoomLevelChanged(change); | 37 zoom_event_manager_->OnZoomLevelChanged(change); |
| 39 } | 38 } |
| 40 | 39 |
| 41 } // namespace chrome | 40 } // namespace chrome |
| OLD | NEW |