OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/zoom_controller.h" | 5 #include "chrome/browser/ui/zoom/zoom_controller.h" |
6 | 6 |
7 #include "base/prefs/pref_service.h" | 7 #include "base/prefs/pref_service.h" |
8 #include "chrome/browser/chrome_notification_types.h" | 8 #include "chrome/browser/chrome_notification_types.h" |
9 #include "chrome/browser/profiles/profile.h" | 9 #include "chrome/browser/profiles/profile.h" |
10 #include "chrome/browser/ui/browser_finder.h" | 10 #include "chrome/browser/ui/browser_finder.h" |
(...skipping 22 matching lines...) Expand all Loading... |
33 browser_context_(web_contents->GetBrowserContext()) { | 33 browser_context_(web_contents->GetBrowserContext()) { |
34 Profile* profile = | 34 Profile* profile = |
35 Profile::FromBrowserContext(web_contents->GetBrowserContext()); | 35 Profile::FromBrowserContext(web_contents->GetBrowserContext()); |
36 default_zoom_level_.Init( | 36 default_zoom_level_.Init( |
37 prefs::kDefaultZoomLevel, | 37 prefs::kDefaultZoomLevel, |
38 profile->GetPrefs(), | 38 profile->GetPrefs(), |
39 base::Bind( | 39 base::Bind( |
40 &ZoomController::UpdateState, base::Unretained(this), std::string())); | 40 &ZoomController::UpdateState, base::Unretained(this), std::string())); |
41 zoom_level_ = default_zoom_level_.GetValue(); | 41 zoom_level_ = default_zoom_level_.GetValue(); |
42 | 42 |
43 zoom_subscription_ = content::HostZoomMap::GetForBrowserContext( | 43 zoom_subscription_ = |
44 browser_context_)->AddZoomLevelChangedCallback( | 44 content::HostZoomMap::GetForWebContents(web_contents) |
45 base::Bind(&ZoomController::OnZoomLevelChanged, | 45 ->AddZoomLevelChangedCallback(base::Bind( |
46 base::Unretained(this))); | 46 &ZoomController::OnZoomLevelChanged, base::Unretained(this))); |
47 | 47 |
48 UpdateState(std::string()); | 48 UpdateState(std::string()); |
49 } | 49 } |
50 | 50 |
51 ZoomController::~ZoomController() {} | 51 ZoomController::~ZoomController() {} |
52 | 52 |
53 bool ZoomController::IsAtDefaultZoom() const { | 53 bool ZoomController::IsAtDefaultZoom() const { |
54 return content::ZoomValuesEqual(GetZoomLevel(), | 54 return content::ZoomValuesEqual(GetZoomLevel(), |
55 default_zoom_level_.GetValue()); | 55 default_zoom_level_.GetValue()); |
56 } | 56 } |
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
117 zoom_mode_, | 117 zoom_mode_, |
118 false /* can_show_bubble */); | 118 false /* can_show_bubble */); |
119 FOR_EACH_OBSERVER( | 119 FOR_EACH_OBSERVER( |
120 ZoomObserver, observers_, OnZoomChanged(zoom_change_data)); | 120 ZoomObserver, observers_, OnZoomChanged(zoom_change_data)); |
121 | 121 |
122 last_extension_ = NULL; | 122 last_extension_ = NULL; |
123 return true; | 123 return true; |
124 } | 124 } |
125 | 125 |
126 content::HostZoomMap* zoom_map = | 126 content::HostZoomMap* zoom_map = |
127 content::HostZoomMap::GetForBrowserContext(browser_context_); | 127 content::HostZoomMap::GetForWebContents(web_contents()); |
128 DCHECK(zoom_map); | 128 DCHECK(zoom_map); |
129 DCHECK(!event_data_); | 129 DCHECK(!event_data_); |
130 event_data_.reset(new ZoomChangedEventData(web_contents(), | 130 event_data_.reset(new ZoomChangedEventData(web_contents(), |
131 GetZoomLevel(), | 131 GetZoomLevel(), |
132 zoom_level, | 132 zoom_level, |
133 zoom_mode_, | 133 zoom_mode_, |
134 false /* can_show_bubble */)); | 134 false /* can_show_bubble */)); |
135 int render_process_id = web_contents()->GetRenderProcessHost()->GetID(); | 135 int render_process_id = web_contents()->GetRenderProcessHost()->GetID(); |
136 int render_view_id = web_contents()->GetRenderViewHost()->GetRoutingID(); | 136 int render_view_id = web_contents()->GetRenderViewHost()->GetRoutingID(); |
137 if (zoom_mode_ == ZOOM_MODE_ISOLATED || | 137 if (zoom_mode_ == ZOOM_MODE_ISOLATED || |
(...skipping 15 matching lines...) Expand all Loading... |
153 DCHECK(!event_data_); | 153 DCHECK(!event_data_); |
154 last_extension_ = NULL; | 154 last_extension_ = NULL; |
155 return true; | 155 return true; |
156 } | 156 } |
157 | 157 |
158 void ZoomController::SetZoomMode(ZoomMode new_mode) { | 158 void ZoomController::SetZoomMode(ZoomMode new_mode) { |
159 if (new_mode == zoom_mode_) | 159 if (new_mode == zoom_mode_) |
160 return; | 160 return; |
161 | 161 |
162 content::HostZoomMap* zoom_map = | 162 content::HostZoomMap* zoom_map = |
163 content::HostZoomMap::GetForBrowserContext(browser_context_); | 163 content::HostZoomMap::GetForWebContents(web_contents()); |
164 DCHECK(zoom_map); | 164 DCHECK(zoom_map); |
165 int render_process_id = web_contents()->GetRenderProcessHost()->GetID(); | 165 int render_process_id = web_contents()->GetRenderProcessHost()->GetID(); |
166 int render_view_id = web_contents()->GetRenderViewHost()->GetRoutingID(); | 166 int render_view_id = web_contents()->GetRenderViewHost()->GetRoutingID(); |
167 double original_zoom_level = GetZoomLevel(); | 167 double original_zoom_level = GetZoomLevel(); |
168 | 168 |
169 DCHECK(!event_data_); | 169 DCHECK(!event_data_); |
170 event_data_.reset(new ZoomChangedEventData(web_contents(), | 170 event_data_.reset(new ZoomChangedEventData(web_contents(), |
171 original_zoom_level, | 171 original_zoom_level, |
172 original_zoom_level, | 172 original_zoom_level, |
173 new_mode, | 173 new_mode, |
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
296 } else { | 296 } else { |
297 // TODO(wjmaclean) Should we consider having HostZoomMap send both old and | 297 // TODO(wjmaclean) Should we consider having HostZoomMap send both old and |
298 // new zoom levels here? | 298 // new zoom levels here? |
299 double zoom_level = GetZoomLevel(); | 299 double zoom_level = GetZoomLevel(); |
300 ZoomChangedEventData zoom_change_data( | 300 ZoomChangedEventData zoom_change_data( |
301 web_contents(), zoom_level, zoom_level, zoom_mode_, can_show_bubble); | 301 web_contents(), zoom_level, zoom_level, zoom_mode_, can_show_bubble); |
302 FOR_EACH_OBSERVER( | 302 FOR_EACH_OBSERVER( |
303 ZoomObserver, observers_, OnZoomChanged(zoom_change_data)); | 303 ZoomObserver, observers_, OnZoomChanged(zoom_change_data)); |
304 } | 304 } |
305 } | 305 } |
OLD | NEW |