| OLD | NEW |
| 1 // Copyright 2011 The Chromium Authors. All rights reserved. | 1 // Copyright 2011 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 "cc/layers/layer_impl.h" | 5 #include "cc/layers/layer_impl.h" |
| 6 | 6 |
| 7 #include "cc/layers/painted_scrollbar_layer_impl.h" | 7 #include "cc/layers/painted_scrollbar_layer_impl.h" |
| 8 #include "cc/layers/solid_color_scrollbar_layer_impl.h" | 8 #include "cc/layers/solid_color_scrollbar_layer_impl.h" |
| 9 #include "cc/output/filter_operation.h" | 9 #include "cc/output/filter_operation.h" |
| 10 #include "cc/output/filter_operations.h" | 10 #include "cc/output/filter_operations.h" |
| (...skipping 493 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 504 EXPECT_VECTOR_EQ(gfx::Vector2dF(50, 0), layer()->TotalScrollOffset()); | 504 EXPECT_VECTOR_EQ(gfx::Vector2dF(50, 0), layer()->TotalScrollOffset()); |
| 505 | 505 |
| 506 EXPECT_VECTOR_EQ(gfx::ScrollOffsetWithDelta(scroll_offset, | 506 EXPECT_VECTOR_EQ(gfx::ScrollOffsetWithDelta(scroll_offset, |
| 507 layer()->ScrollDelta()), | 507 layer()->ScrollDelta()), |
| 508 layer()->TotalScrollOffset()); | 508 layer()->TotalScrollOffset()); |
| 509 EXPECT_VECTOR_EQ(scroll_offset, layer()->scroll_offset()); | 509 EXPECT_VECTOR_EQ(scroll_offset, layer()->scroll_offset()); |
| 510 } | 510 } |
| 511 | 511 |
| 512 class ScrollDelegateIgnore : public LayerImpl::ScrollOffsetDelegate { | 512 class ScrollDelegateIgnore : public LayerImpl::ScrollOffsetDelegate { |
| 513 public: | 513 public: |
| 514 void SetTotalScrollOffset(const gfx::ScrollOffset& new_value) override { | 514 void SetCurrentScrollOffset(const gfx::ScrollOffset& new_value) override { |
| 515 last_attempted_set_offset_ = new_value; | 515 last_attempted_set_offset_ = new_value; |
| 516 } | 516 } |
| 517 gfx::ScrollOffset last_attempted_set_offset() const { | 517 gfx::ScrollOffset last_attempted_set_offset() const { |
| 518 return last_attempted_set_offset_; | 518 return last_attempted_set_offset_; |
| 519 } | 519 } |
| 520 | 520 |
| 521 gfx::ScrollOffset GetTotalScrollOffset() override { | 521 gfx::ScrollOffset GetCurrentScrollOffset() override { |
| 522 return gfx::ScrollOffset(fixed_offset_); | 522 return gfx::ScrollOffset(fixed_offset_); |
| 523 } | 523 } |
| 524 bool IsExternalFlingActive() const override { return false; } | 524 bool IsExternalFlingActive() const override { return false; } |
| 525 void Update() const override { } | 525 void Update() const override { } |
| 526 | 526 |
| 527 void set_fixed_offset(const gfx::Vector2dF& fixed_offset) { | 527 void set_fixed_offset(const gfx::Vector2dF& fixed_offset) { |
| 528 fixed_offset_ = fixed_offset; | 528 fixed_offset_ = fixed_offset; |
| 529 } | 529 } |
| 530 | 530 |
| 531 private: | 531 private: |
| 532 gfx::ScrollOffset last_attempted_set_offset_; | 532 gfx::ScrollOffset last_attempted_set_offset_; |
| 533 gfx::Vector2dF fixed_offset_; | 533 gfx::Vector2dF fixed_offset_; |
| 534 }; | 534 }; |
| 535 | 535 |
| 536 TEST_F(LayerImplScrollTest, ScrollByWithIgnoringDelegate) { | 536 TEST_F(LayerImplScrollTest, ScrollByWithIgnoringDelegate) { |
| 537 gfx::ScrollOffset scroll_offset(10, 5); | 537 gfx::ScrollOffset scroll_offset(10, 5); |
| 538 layer()->SetScrollOffset(scroll_offset); | 538 layer()->SetScrollOffset(scroll_offset); |
| 539 | 539 |
| 540 EXPECT_VECTOR_EQ(scroll_offset, layer()->TotalScrollOffset()); | 540 EXPECT_VECTOR_EQ(scroll_offset, layer()->TotalScrollOffset()); |
| 541 EXPECT_VECTOR_EQ(scroll_offset, layer()->scroll_offset()); | 541 EXPECT_VECTOR_EQ(scroll_offset, layer()->scroll_offset()); |
| 542 EXPECT_VECTOR_EQ(gfx::Vector2dF(), layer()->ScrollDelta()); | 542 EXPECT_VECTOR_EQ(gfx::Vector2dF(), layer()->ScrollDelta()); |
| 543 | 543 |
| 544 ScrollDelegateIgnore delegate; | 544 ScrollDelegateIgnore delegate; |
| 545 gfx::Vector2dF fixed_offset(32, 12); | 545 gfx::Vector2dF fixed_offset(32, 12); |
| 546 delegate.set_fixed_offset(fixed_offset); | 546 delegate.set_fixed_offset(fixed_offset); |
| 547 layer()->SetScrollOffsetDelegate(&delegate); | 547 layer()->SetScrollOffsetDelegate(&delegate); |
| 548 layer()->RefreshFromScrollDelegate(); |
| 548 | 549 |
| 549 EXPECT_VECTOR_EQ(fixed_offset, layer()->TotalScrollOffset()); | 550 EXPECT_VECTOR_EQ(fixed_offset, layer()->TotalScrollOffset()); |
| 550 EXPECT_VECTOR_EQ(scroll_offset, layer()->scroll_offset()); | 551 EXPECT_VECTOR_EQ(scroll_offset, layer()->scroll_offset()); |
| 551 | 552 |
| 552 layer()->ScrollBy(gfx::Vector2dF(-100, 100)); | 553 layer()->ScrollBy(gfx::Vector2dF(-100, 100)); |
| 553 | 554 |
| 554 EXPECT_VECTOR_EQ(fixed_offset, layer()->TotalScrollOffset()); | 555 EXPECT_VECTOR_EQ(fixed_offset, layer()->TotalScrollOffset()); |
| 555 EXPECT_VECTOR_EQ(scroll_offset, layer()->scroll_offset()); | 556 EXPECT_VECTOR_EQ(scroll_offset, layer()->scroll_offset()); |
| 556 | 557 |
| 557 layer()->SetScrollOffsetDelegate(nullptr); | 558 layer()->SetScrollOffsetDelegate(nullptr); |
| 558 | 559 |
| 559 EXPECT_VECTOR_EQ(fixed_offset, layer()->TotalScrollOffset()); | 560 EXPECT_VECTOR_EQ(fixed_offset, layer()->TotalScrollOffset()); |
| 560 EXPECT_VECTOR_EQ(scroll_offset, layer()->scroll_offset()); | 561 EXPECT_VECTOR_EQ(scroll_offset, layer()->scroll_offset()); |
| 561 | 562 |
| 562 gfx::Vector2dF scroll_delta(1, 1); | 563 gfx::Vector2dF scroll_delta(1, 1); |
| 563 layer()->ScrollBy(scroll_delta); | 564 layer()->ScrollBy(scroll_delta); |
| 564 | 565 |
| 565 EXPECT_VECTOR_EQ(fixed_offset + scroll_delta, layer()->TotalScrollOffset()); | 566 EXPECT_VECTOR_EQ(fixed_offset + scroll_delta, layer()->TotalScrollOffset()); |
| 566 EXPECT_VECTOR_EQ(scroll_offset, layer()->scroll_offset()); | 567 EXPECT_VECTOR_EQ(scroll_offset, layer()->scroll_offset()); |
| 567 } | 568 } |
| 568 | 569 |
| 569 class ScrollDelegateAccept : public LayerImpl::ScrollOffsetDelegate { | 570 class ScrollDelegateAccept : public LayerImpl::ScrollOffsetDelegate { |
| 570 public: | 571 public: |
| 571 void SetTotalScrollOffset(const gfx::ScrollOffset& new_value) override { | 572 void SetCurrentScrollOffset(const gfx::ScrollOffset& new_value) override { |
| 572 current_offset_ = new_value; | 573 current_offset_ = new_value; |
| 573 } | 574 } |
| 574 gfx::ScrollOffset GetTotalScrollOffset() override { return current_offset_; } | 575 gfx::ScrollOffset GetCurrentScrollOffset() override { |
| 576 return current_offset_; |
| 577 } |
| 575 bool IsExternalFlingActive() const override { return false; } | 578 bool IsExternalFlingActive() const override { return false; } |
| 576 void Update() const override { } | 579 void Update() const override { } |
| 577 | 580 |
| 578 private: | 581 private: |
| 579 gfx::ScrollOffset current_offset_; | 582 gfx::ScrollOffset current_offset_; |
| 580 }; | 583 }; |
| 581 | 584 |
| 582 TEST_F(LayerImplScrollTest, ScrollByWithAcceptingDelegate) { | 585 TEST_F(LayerImplScrollTest, ScrollByWithAcceptingDelegate) { |
| 583 gfx::ScrollOffset scroll_offset(10, 5); | 586 gfx::ScrollOffset scroll_offset(10, 5); |
| 584 layer()->SetScrollOffset(scroll_offset); | 587 layer()->SetScrollOffset(scroll_offset); |
| (...skipping 24 matching lines...) Expand all Loading... |
| 609 | 612 |
| 610 EXPECT_VECTOR_EQ(gfx::Vector2dF(1, 80), layer()->TotalScrollOffset()); | 613 EXPECT_VECTOR_EQ(gfx::Vector2dF(1, 80), layer()->TotalScrollOffset()); |
| 611 EXPECT_VECTOR_EQ(scroll_offset, layer()->scroll_offset()); | 614 EXPECT_VECTOR_EQ(scroll_offset, layer()->scroll_offset()); |
| 612 } | 615 } |
| 613 | 616 |
| 614 TEST_F(LayerImplScrollTest, ApplySentScrollsNoDelegate) { | 617 TEST_F(LayerImplScrollTest, ApplySentScrollsNoDelegate) { |
| 615 gfx::ScrollOffset scroll_offset(10, 5); | 618 gfx::ScrollOffset scroll_offset(10, 5); |
| 616 gfx::Vector2dF scroll_delta(20.5f, 8.5f); | 619 gfx::Vector2dF scroll_delta(20.5f, 8.5f); |
| 617 gfx::Vector2d sent_scroll_delta(12, -3); | 620 gfx::Vector2d sent_scroll_delta(12, -3); |
| 618 | 621 |
| 619 layer()->SetScrollOffset(scroll_offset); | 622 layer()->PushScrollOffsetFromMainThread(scroll_offset); |
| 620 layer()->ScrollBy(scroll_delta); | 623 layer()->ScrollBy(sent_scroll_delta); |
| 621 layer()->SetSentScrollDelta(sent_scroll_delta); | 624 layer()->PullDeltaForMainThread(); |
| 625 layer()->SetCurrentScrollOffset(scroll_offset + |
| 626 gfx::ScrollOffset(scroll_delta)); |
| 622 | 627 |
| 623 EXPECT_VECTOR_EQ(gfx::ScrollOffsetWithDelta(scroll_offset, scroll_delta), | 628 EXPECT_VECTOR_EQ(gfx::ScrollOffsetWithDelta(scroll_offset, scroll_delta), |
| 624 layer()->TotalScrollOffset()); | 629 layer()->TotalScrollOffset()); |
| 625 EXPECT_VECTOR_EQ(scroll_delta, layer()->ScrollDelta()); | 630 EXPECT_VECTOR_EQ(scroll_delta, layer()->ScrollDelta()); |
| 626 EXPECT_VECTOR_EQ(scroll_offset, layer()->scroll_offset()); | 631 EXPECT_VECTOR_EQ(scroll_offset, layer()->scroll_offset()); |
| 627 EXPECT_VECTOR_EQ(sent_scroll_delta, layer()->sent_scroll_delta()); | |
| 628 | 632 |
| 629 layer()->ApplySentScrollDeltasFromAbortedCommit(); | 633 layer()->ApplySentScrollDeltasFromAbortedCommit(); |
| 630 | 634 |
| 631 EXPECT_VECTOR_EQ(gfx::ScrollOffsetWithDelta(scroll_offset, scroll_delta), | 635 EXPECT_VECTOR_EQ(gfx::ScrollOffsetWithDelta(scroll_offset, scroll_delta), |
| 632 layer()->TotalScrollOffset()); | 636 layer()->TotalScrollOffset()); |
| 633 EXPECT_VECTOR_EQ(scroll_delta - sent_scroll_delta, layer()->ScrollDelta()); | 637 EXPECT_VECTOR_EQ(scroll_delta - sent_scroll_delta, layer()->ScrollDelta()); |
| 634 EXPECT_VECTOR_EQ(gfx::ScrollOffsetWithDelta(scroll_offset, sent_scroll_delta), | 638 EXPECT_VECTOR_EQ(gfx::ScrollOffsetWithDelta(scroll_offset, sent_scroll_delta), |
| 635 layer()->scroll_offset()); | 639 layer()->scroll_offset()); |
| 636 EXPECT_VECTOR_EQ(gfx::Vector2d(), layer()->sent_scroll_delta()); | |
| 637 } | 640 } |
| 638 | 641 |
| 639 TEST_F(LayerImplScrollTest, ApplySentScrollsWithIgnoringDelegate) { | 642 TEST_F(LayerImplScrollTest, ApplySentScrollsWithIgnoringDelegate) { |
| 640 gfx::ScrollOffset scroll_offset(10, 5); | 643 gfx::ScrollOffset scroll_offset(10, 5); |
| 641 gfx::Vector2d sent_scroll_delta(12, -3); | 644 gfx::Vector2d sent_scroll_delta(12, -3); |
| 642 gfx::Vector2dF fixed_offset(32, 12); | 645 gfx::Vector2dF fixed_offset(32, 12); |
| 643 | 646 |
| 644 layer()->SetScrollOffset(scroll_offset); | 647 layer()->PushScrollOffsetFromMainThread(scroll_offset); |
| 648 layer()->ScrollBy(sent_scroll_delta); |
| 649 layer()->PullDeltaForMainThread(); |
| 650 layer()->SetCurrentScrollOffset(scroll_offset); |
| 645 ScrollDelegateIgnore delegate; | 651 ScrollDelegateIgnore delegate; |
| 646 delegate.set_fixed_offset(fixed_offset); | 652 delegate.set_fixed_offset(fixed_offset); |
| 647 layer()->SetScrollOffsetDelegate(&delegate); | 653 layer()->SetScrollOffsetDelegate(&delegate); |
| 648 layer()->SetSentScrollDelta(sent_scroll_delta); | 654 layer()->RefreshFromScrollDelegate(); |
| 649 | 655 |
| 650 EXPECT_VECTOR_EQ(fixed_offset, layer()->TotalScrollOffset()); | 656 EXPECT_VECTOR_EQ(fixed_offset, layer()->TotalScrollOffset()); |
| 651 EXPECT_VECTOR_EQ(scroll_offset, layer()->scroll_offset()); | 657 EXPECT_VECTOR_EQ(scroll_offset, layer()->scroll_offset()); |
| 652 EXPECT_VECTOR_EQ(sent_scroll_delta, layer()->sent_scroll_delta()); | |
| 653 | 658 |
| 654 layer()->ApplySentScrollDeltasFromAbortedCommit(); | 659 layer()->ApplySentScrollDeltasFromAbortedCommit(); |
| 655 | 660 |
| 656 EXPECT_VECTOR_EQ(fixed_offset, delegate.last_attempted_set_offset()); | 661 EXPECT_VECTOR_EQ(fixed_offset, delegate.last_attempted_set_offset()); |
| 657 | 662 |
| 658 EXPECT_VECTOR_EQ(fixed_offset, layer()->TotalScrollOffset()); | 663 EXPECT_VECTOR_EQ(fixed_offset, layer()->TotalScrollOffset()); |
| 659 EXPECT_VECTOR_EQ(gfx::ScrollOffsetWithDelta(scroll_offset, sent_scroll_delta), | 664 EXPECT_VECTOR_EQ(gfx::ScrollOffsetWithDelta(scroll_offset, sent_scroll_delta), |
| 660 layer()->scroll_offset()); | 665 layer()->scroll_offset()); |
| 661 EXPECT_VECTOR_EQ(gfx::Vector2d(), layer()->sent_scroll_delta()); | |
| 662 } | 666 } |
| 663 | 667 |
| 664 TEST_F(LayerImplScrollTest, ApplySentScrollsWithAcceptingDelegate) { | 668 TEST_F(LayerImplScrollTest, ApplySentScrollsWithAcceptingDelegate) { |
| 665 gfx::ScrollOffset scroll_offset(10, 5); | 669 gfx::ScrollOffset scroll_offset(10, 5); |
| 666 gfx::Vector2d sent_scroll_delta(12, -3); | 670 gfx::Vector2d sent_scroll_delta(12, -3); |
| 667 gfx::Vector2dF scroll_delta(20.5f, 8.5f); | 671 gfx::Vector2dF scroll_delta(20.5f, 8.5f); |
| 668 | 672 |
| 669 layer()->SetScrollOffset(scroll_offset); | 673 layer()->PushScrollOffsetFromMainThread(scroll_offset); |
| 674 layer()->ScrollBy(sent_scroll_delta); |
| 675 layer()->PullDeltaForMainThread(); |
| 670 ScrollDelegateAccept delegate; | 676 ScrollDelegateAccept delegate; |
| 671 layer()->SetScrollOffsetDelegate(&delegate); | 677 layer()->SetScrollOffsetDelegate(&delegate); |
| 672 layer()->ScrollBy(scroll_delta); | 678 layer()->SetCurrentScrollOffset(scroll_offset + |
| 673 layer()->SetSentScrollDelta(sent_scroll_delta); | 679 gfx::ScrollOffset(scroll_delta)); |
| 674 | 680 |
| 675 EXPECT_VECTOR_EQ(gfx::ScrollOffsetWithDelta(scroll_offset, scroll_delta), | 681 EXPECT_VECTOR_EQ(gfx::ScrollOffsetWithDelta(scroll_offset, scroll_delta), |
| 676 layer()->TotalScrollOffset()); | 682 layer()->TotalScrollOffset()); |
| 677 EXPECT_VECTOR_EQ(scroll_offset, layer()->scroll_offset()); | 683 EXPECT_VECTOR_EQ(scroll_offset, layer()->scroll_offset()); |
| 678 EXPECT_VECTOR_EQ(sent_scroll_delta, layer()->sent_scroll_delta()); | |
| 679 | 684 |
| 680 layer()->ApplySentScrollDeltasFromAbortedCommit(); | 685 layer()->ApplySentScrollDeltasFromAbortedCommit(); |
| 681 | 686 |
| 682 EXPECT_VECTOR_EQ(gfx::ScrollOffsetWithDelta(scroll_offset, scroll_delta), | 687 EXPECT_VECTOR_EQ(gfx::ScrollOffsetWithDelta(scroll_offset, scroll_delta), |
| 683 layer()->TotalScrollOffset()); | 688 layer()->TotalScrollOffset()); |
| 684 EXPECT_VECTOR_EQ(gfx::ScrollOffsetWithDelta(scroll_offset, sent_scroll_delta), | 689 EXPECT_VECTOR_EQ(gfx::ScrollOffsetWithDelta(scroll_offset, sent_scroll_delta), |
| 685 layer()->scroll_offset()); | 690 layer()->scroll_offset()); |
| 686 EXPECT_VECTOR_EQ(gfx::Vector2d(), layer()->sent_scroll_delta()); | |
| 687 } | 691 } |
| 688 | 692 |
| 689 TEST_F(LayerImplScrollTest, ScrollUserUnscrollableLayer) { | 693 TEST_F(LayerImplScrollTest, ScrollUserUnscrollableLayer) { |
| 690 gfx::ScrollOffset scroll_offset(10, 5); | 694 gfx::ScrollOffset scroll_offset(10, 5); |
| 691 gfx::Vector2dF scroll_delta(20.5f, 8.5f); | 695 gfx::Vector2dF scroll_delta(20.5f, 8.5f); |
| 692 | 696 |
| 693 layer()->set_user_scrollable_vertical(false); | 697 layer()->set_user_scrollable_vertical(false); |
| 694 layer()->SetScrollOffset(scroll_offset); | 698 layer()->SetScrollOffset(scroll_offset); |
| 695 gfx::Vector2dF unscrolled = layer()->ScrollBy(scroll_delta); | 699 gfx::Vector2dF unscrolled = layer()->ScrollBy(scroll_delta); |
| 696 | 700 |
| 697 EXPECT_VECTOR_EQ(gfx::Vector2dF(0, 8.5f), unscrolled); | 701 EXPECT_VECTOR_EQ(gfx::Vector2dF(0, 8.5f), unscrolled); |
| 698 EXPECT_VECTOR_EQ(gfx::Vector2dF(30.5f, 5), layer()->TotalScrollOffset()); | 702 EXPECT_VECTOR_EQ(gfx::Vector2dF(30.5f, 5), layer()->TotalScrollOffset()); |
| 699 } | 703 } |
| 700 | 704 |
| 701 TEST_F(LayerImplScrollTest, PushPropertiesToMirrorsTotalScrollOffset) { | 705 TEST_F(LayerImplScrollTest, PushPropertiesToMirrorsTotalScrollOffset) { |
| 702 gfx::ScrollOffset scroll_offset(10, 5); | 706 gfx::ScrollOffset scroll_offset(10, 5); |
| 703 gfx::Vector2dF scroll_delta(12, 18); | 707 gfx::Vector2dF scroll_delta(12, 18); |
| 704 | 708 |
| 705 host_impl().CreatePendingTree(); | 709 host_impl().CreatePendingTree(); |
| 706 | 710 |
| 707 layer()->SetScrollOffset(scroll_offset); | 711 layer()->SetScrollOffset(scroll_offset); |
| 708 gfx::Vector2dF unscrolled = layer()->ScrollBy(scroll_delta); | 712 gfx::Vector2dF unscrolled = layer()->ScrollBy(scroll_delta); |
| 709 | 713 |
| 710 EXPECT_VECTOR_EQ(gfx::Vector2dF(0, 0), unscrolled); | 714 EXPECT_VECTOR_EQ(gfx::Vector2dF(0, 0), unscrolled); |
| 711 EXPECT_VECTOR_EQ(gfx::Vector2dF(22, 23), layer()->TotalScrollOffset()); | 715 EXPECT_VECTOR_EQ(gfx::Vector2dF(22, 23), layer()->TotalScrollOffset()); |
| 712 | 716 |
| 713 layer()->SetSentScrollDelta(scroll_delta); | 717 layer()->PullDeltaForMainThread(); |
| 714 | 718 |
| 715 scoped_ptr<LayerImpl> pending_layer = | 719 scoped_ptr<LayerImpl> pending_layer = LayerImpl::Create( |
| 716 LayerImpl::Create(host_impl().sync_tree(), layer()->id()); | 720 host_impl().sync_tree(), layer()->id(), layer()->synced_scroll_offset()); |
| 717 pending_layer->SetScrollOffset(layer()->TotalScrollOffset()); | 721 pending_layer->SetScrollOffset(layer()->TotalScrollOffset()); |
| 718 | 722 |
| 719 pending_layer->PushPropertiesTo(layer()); | 723 pending_layer->PushPropertiesTo(layer()); |
| 720 | 724 |
| 721 EXPECT_VECTOR_EQ(gfx::Vector2dF(22, 23), layer()->TotalScrollOffset()); | 725 EXPECT_VECTOR_EQ(gfx::Vector2dF(22, 23), layer()->TotalScrollOffset()); |
| 722 EXPECT_VECTOR_EQ(layer()->TotalScrollOffset(), | 726 EXPECT_VECTOR_EQ(layer()->TotalScrollOffset(), |
| 723 pending_layer->TotalScrollOffset()); | 727 pending_layer->TotalScrollOffset()); |
| 724 } | 728 } |
| 725 | 729 |
| 726 TEST_F(LayerImplScrollTest, SetNewScrollbarParameters) { | 730 TEST_F(LayerImplScrollTest, SetNewScrollbarParameters) { |
| (...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 869 | 873 |
| 870 ASSERT_TRUE(layer(IV_SCROLL, ACTIVE)->scrollable()); | 874 ASSERT_TRUE(layer(IV_SCROLL, ACTIVE)->scrollable()); |
| 871 | 875 |
| 872 ASSERT_TRUE(LayerHasScrollbar(OV_SCROLL, ACTIVE)); | 876 ASSERT_TRUE(LayerHasScrollbar(OV_SCROLL, ACTIVE)); |
| 873 ASSERT_TRUE(LayerHasScrollbar(IV_CLIP, ACTIVE)); | 877 ASSERT_TRUE(LayerHasScrollbar(IV_CLIP, ACTIVE)); |
| 874 ASSERT_TRUE(LayerHasScrollbar(IV_SCROLL, ACTIVE)); | 878 ASSERT_TRUE(LayerHasScrollbar(IV_SCROLL, ACTIVE)); |
| 875 } | 879 } |
| 876 | 880 |
| 877 } // namespace | 881 } // namespace |
| 878 } // namespace cc | 882 } // namespace cc |
| OLD | NEW |