| Index: cc/layers/layer_impl_unittest.cc
|
| diff --git a/cc/layers/layer_impl_unittest.cc b/cc/layers/layer_impl_unittest.cc
|
| index 99673f6146b7495e83cbf4279c58cf2308d6698f..c61f2c2ff55d4da42596e91feef54530b60cebb6 100644
|
| --- a/cc/layers/layer_impl_unittest.cc
|
| +++ b/cc/layers/layer_impl_unittest.cc
|
| @@ -434,6 +434,8 @@ class LayerImplScrollTest : public testing::Test {
|
| return host_impl_.active_tree()->root_layer()->children()[0];
|
| }
|
|
|
| + LayerTreeHostImpl& host_impl() { return host_impl_; }
|
| +
|
| LayerTreeImpl* tree() { return host_impl_.active_tree(); }
|
|
|
| LayerTreeSettings settings() {
|
| @@ -497,7 +499,13 @@ TEST_F(LayerImplScrollTest, ScrollByWithNonZeroOffset) {
|
|
|
| class ScrollDelegateIgnore : public LayerImpl::ScrollOffsetDelegate {
|
| public:
|
| - void SetTotalScrollOffset(const gfx::ScrollOffset& new_value) override {}
|
| + void SetTotalScrollOffset(const gfx::ScrollOffset& new_value) override {
|
| + last_attempted_set_offset_ = new_value;
|
| + }
|
| + gfx::ScrollOffset last_attempted_set_offset() const {
|
| + return last_attempted_set_offset_;
|
| + }
|
| +
|
| gfx::ScrollOffset GetTotalScrollOffset() override {
|
| return gfx::ScrollOffset(fixed_offset_);
|
| }
|
| @@ -509,6 +517,7 @@ class ScrollDelegateIgnore : public LayerImpl::ScrollOffsetDelegate {
|
| }
|
|
|
| private:
|
| + gfx::ScrollOffset last_attempted_set_offset_;
|
| gfx::Vector2dF fixed_offset_;
|
| };
|
|
|
| @@ -632,6 +641,8 @@ TEST_F(LayerImplScrollTest, ApplySentScrollsWithIgnoringDelegate) {
|
|
|
| layer()->ApplySentScrollDeltasFromAbortedCommit();
|
|
|
| + EXPECT_VECTOR_EQ(fixed_offset, delegate.last_attempted_set_offset());
|
| +
|
| EXPECT_VECTOR_EQ(fixed_offset, layer()->TotalScrollOffset());
|
| EXPECT_VECTOR_EQ(gfx::ScrollOffsetWithDelta(scroll_offset, sent_scroll_delta),
|
| layer()->scroll_offset());
|
| @@ -675,6 +686,31 @@ TEST_F(LayerImplScrollTest, ScrollUserUnscrollableLayer) {
|
| EXPECT_VECTOR_EQ(gfx::Vector2dF(30.5f, 5), layer()->TotalScrollOffset());
|
| }
|
|
|
| +TEST_F(LayerImplScrollTest, PushPropertiesToMirrorsTotalScrollOffset) {
|
| + gfx::ScrollOffset scroll_offset(10, 5);
|
| + gfx::Vector2dF scroll_delta(12, 18);
|
| +
|
| + host_impl().CreatePendingTree();
|
| +
|
| + layer()->SetScrollOffset(scroll_offset);
|
| + gfx::Vector2dF unscrolled = layer()->ScrollBy(scroll_delta);
|
| +
|
| + EXPECT_VECTOR_EQ(gfx::Vector2dF(0, 0), unscrolled);
|
| + EXPECT_VECTOR_EQ(gfx::Vector2dF(22, 23), layer()->TotalScrollOffset());
|
| +
|
| + layer()->SetSentScrollDelta(scroll_delta);
|
| +
|
| + scoped_ptr<LayerImpl> pending_layer =
|
| + LayerImpl::Create(host_impl().sync_tree(), layer()->id());
|
| + pending_layer->SetScrollOffset(layer()->TotalScrollOffset());
|
| +
|
| + pending_layer->PushPropertiesTo(layer());
|
| +
|
| + EXPECT_VECTOR_EQ(gfx::Vector2dF(22, 23), layer()->TotalScrollOffset());
|
| + EXPECT_VECTOR_EQ(layer()->TotalScrollOffset(),
|
| + pending_layer->TotalScrollOffset());
|
| +}
|
| +
|
| TEST_F(LayerImplScrollTest, SetNewScrollbarParameters) {
|
| gfx::ScrollOffset scroll_offset(10, 5);
|
| layer()->SetScrollOffset(scroll_offset);
|
|
|