Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1290)

Unified Diff: chrome/browser/ui/zoom/zoom_controller.cc

Issue 373603007: Refactor to convert vector to scoped_ptr in ZoomController. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Clean up includes list. Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/ui/zoom/zoom_controller.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/ui/zoom/zoom_controller.cc
diff --git a/chrome/browser/ui/zoom/zoom_controller.cc b/chrome/browser/ui/zoom/zoom_controller.cc
index f39575b31d292bd6daee14197a1e144534705310..53def6459835c0c2f1e7e79b9f4221db4216df1f 100644
--- a/chrome/browser/ui/zoom/zoom_controller.cc
+++ b/chrome/browser/ui/zoom/zoom_controller.cc
@@ -125,8 +125,8 @@ bool ZoomController::SetZoomLevelByExtension(
content::HostZoomMap* zoom_map =
content::HostZoomMap::GetForBrowserContext(browser_context_);
DCHECK(zoom_map);
- DCHECK(event_data_.empty());
- event_data_.push_back(ZoomChangedEventData(web_contents(),
+ DCHECK(!event_data_);
+ event_data_.reset(new ZoomChangedEventData(web_contents(),
GetZoomLevel(),
zoom_level,
zoom_mode_,
@@ -149,7 +149,7 @@ bool ZoomController::SetZoomLevelByExtension(
zoom_map->SetZoomLevelForHost(host, zoom_level);
}
- DCHECK(event_data_.empty());
+ DCHECK(!event_data_);
last_extension_ = NULL;
return true;
}
@@ -165,13 +165,12 @@ void ZoomController::SetZoomMode(ZoomMode new_mode) {
int render_view_id = web_contents()->GetRenderViewHost()->GetRoutingID();
double original_zoom_level = GetZoomLevel();
- ZoomChangedEventData zoom_change_data(web_contents(),
- original_zoom_level,
- original_zoom_level,
- new_mode,
- new_mode != ZOOM_MODE_DEFAULT);
- DCHECK(event_data_.empty());
- event_data_.push_back(zoom_change_data);
+ DCHECK(!event_data_);
+ event_data_.reset(new ZoomChangedEventData(web_contents(),
+ original_zoom_level,
+ original_zoom_level,
+ new_mode,
+ new_mode != ZOOM_MODE_DEFAULT));
switch (new_mode) {
case ZOOM_MODE_DEFAULT: {
@@ -189,7 +188,7 @@ void ZoomController::SetZoomMode(ZoomMode new_mode) {
// the correct zoom level.
double origin_zoom_level =
zoom_map->GetZoomLevelForHostAndScheme(url.scheme(), host);
- event_data_.back().new_zoom_level = origin_zoom_level;
+ event_data_->new_zoom_level = origin_zoom_level;
zoom_map->SetTemporaryZoomLevel(
render_process_id, render_view_id, origin_zoom_level);
} else {
@@ -214,8 +213,8 @@ void ZoomController::SetZoomMode(ZoomMode new_mode) {
// When we don't call any HostZoomMap set functions, we send the event
// manually.
FOR_EACH_OBSERVER(
- ZoomObserver, observers_, OnZoomChanged(event_data_.back()));
- event_data_.pop_back();
+ ZoomObserver, observers_, OnZoomChanged(*event_data_));
+ event_data_.reset();
}
break;
}
@@ -231,8 +230,8 @@ void ZoomController::SetZoomMode(ZoomMode new_mode) {
// When we don't call any HostZoomMap set functions, we send the event
// manually.
FOR_EACH_OBSERVER(
- ZoomObserver, observers_, OnZoomChanged(event_data_.back()));
- event_data_.pop_back();
+ ZoomObserver, observers_, OnZoomChanged(*event_data_));
+ event_data_.reset();
}
break;
}
@@ -244,7 +243,7 @@ void ZoomController::SetZoomMode(ZoomMode new_mode) {
}
}
// Any event data we've stored should have been consumed by this point.
- DCHECK(event_data_.empty());
+ DCHECK(!event_data_);
zoom_mode_ = new_mode;
}
@@ -288,11 +287,11 @@ void ZoomController::UpdateStateIncludingTemporary(const std::string& host,
bool can_show_bubble =
zoom_mode_ != ZOOM_MODE_DEFAULT || (!host.empty() && !is_temporary_zoom);
- if (!event_data_.empty()) {
+ if (event_data_) {
// For state changes initiated within the ZoomController, information about
// the change should be sent.
- ZoomChangedEventData zoom_change_data = event_data_.back();
- event_data_.pop_back();
+ ZoomChangedEventData zoom_change_data = *event_data_;
+ event_data_.reset();
zoom_change_data.can_show_bubble |= can_show_bubble;
FOR_EACH_OBSERVER(
ZoomObserver, observers_, OnZoomChanged(zoom_change_data));
@@ -300,7 +299,7 @@ void ZoomController::UpdateStateIncludingTemporary(const std::string& host,
// TODO(wjmaclean) Should we consider having HostZoomMap send both old and
// new zoom levels here?
double zoom_level = GetZoomLevel();
- ZoomChangedEventData zoom_change_data = ZoomChangedEventData(
+ ZoomChangedEventData zoom_change_data(
web_contents(), zoom_level, zoom_level, zoom_mode_, can_show_bubble);
FOR_EACH_OBSERVER(
ZoomObserver, observers_, OnZoomChanged(zoom_change_data));
« no previous file with comments | « chrome/browser/ui/zoom/zoom_controller.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698