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

Unified Diff: cc/layers/scrollbar_layer_impl_base.cc

Issue 571873003: [Android]Optimization of scrollbar animation. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Adding test case for above patch Created 6 years, 3 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
Index: cc/layers/scrollbar_layer_impl_base.cc
diff --git a/cc/layers/scrollbar_layer_impl_base.cc b/cc/layers/scrollbar_layer_impl_base.cc
index 62b7dee0ad9c297f99d22a4826cdaf498ac21d96..c66eb5e994e6dabb0b037d2d74b5f264d6601602 100644
--- a/cc/layers/scrollbar_layer_impl_base.cc
+++ b/cc/layers/scrollbar_layer_impl_base.cc
@@ -26,7 +26,9 @@ ScrollbarLayerImplBase::ScrollbarLayerImplBase(
orientation_(orientation),
is_left_side_vertical_scrollbar_(is_left_side_vertical_scrollbar),
vertical_adjust_(0.f),
- visible_to_total_length_ratio_(1.f) {}
+ visible_to_total_length_ratio_(1.f),
+ scrollbar_needs_animation_(false) {
+}
ScrollbarLayerImplBase::~ScrollbarLayerImplBase() {}
@@ -109,6 +111,7 @@ void ScrollbarLayerImplBase::SetCurrentPos(float current_pos) {
if (current_pos_ == current_pos)
return;
current_pos_ = current_pos;
+ scrollbar_needs_animation_ = true;
NoteLayerPropertyChanged();
}
@@ -116,6 +119,7 @@ void ScrollbarLayerImplBase::SetMaximum(int maximum) {
if (maximum_ == maximum)
return;
maximum_ = maximum;
+ scrollbar_needs_animation_ = true;
NoteLayerPropertyChanged();
}
@@ -123,6 +127,7 @@ void ScrollbarLayerImplBase::SetVerticalAdjust(float vertical_adjust) {
if (vertical_adjust_ == vertical_adjust)
return;
vertical_adjust_ = vertical_adjust;
+ scrollbar_needs_animation_ = true;
NoteLayerPropertyChanged();
}
@@ -133,6 +138,7 @@ void ScrollbarLayerImplBase::SetVisibleToTotalLengthRatio(float ratio) {
if (visible_to_total_length_ratio_ == ratio)
return;
visible_to_total_length_ratio_ = ratio;
+ scrollbar_needs_animation_ = true;
NoteLayerPropertyChanged();
}
@@ -140,6 +146,7 @@ void ScrollbarLayerImplBase::SetThumbThicknessScaleFactor(float factor) {
if (thumb_thickness_scale_factor_ == factor)
return;
thumb_thickness_scale_factor_ = factor;
+ scrollbar_needs_animation_ = true;
NoteLayerPropertyChanged();
}

Powered by Google App Engine
This is Rietveld 408576698