Index: cc/trees/layer_tree_host.cc |
diff --git a/cc/trees/layer_tree_host.cc b/cc/trees/layer_tree_host.cc |
index b6e64730ef2cebcc6662fa25ceee2c0d7edc300c..a24ac1722b62dc45abb7a5e15fcdde42396a78da 100644 |
--- a/cc/trees/layer_tree_host.cc |
+++ b/cc/trees/layer_tree_host.cc |
@@ -130,6 +130,7 @@ LayerTreeHost::LayerTreeHost( |
background_color_(SK_ColorWHITE), |
has_transparent_background_(false), |
partial_texture_update_requests_(0), |
+ did_complete_scale_animation_(false), |
in_paint_layer_contents_(false), |
total_frames_used_for_lcd_text_metrics_(0), |
id_(s_layer_tree_host_sequence_number.GetNext() + 1), |
@@ -403,6 +404,10 @@ void LayerTreeHost::UpdateHudLayer() { |
void LayerTreeHost::CommitComplete() { |
source_frame_number_++; |
client_->DidCommit(); |
+ if (did_complete_scale_animation_) { |
+ client_->DidCompletePageScaleAnimation(); |
+ did_complete_scale_animation_ = false; |
+ } |
} |
void LayerTreeHost::SetOutputSurface(scoped_ptr<OutputSurface> surface) { |
@@ -788,6 +793,10 @@ bool LayerTreeHost::UpdateLayers(ResourceUpdateQueue* queue) { |
return result || next_commit_forces_redraw_; |
} |
+void LayerTreeHost::DidCompletePageScaleAnimation() { |
+ did_complete_scale_animation_ = true; |
+} |
+ |
static Layer* FindFirstScrollableLayer(Layer* layer) { |
if (!layer) |
return NULL; |