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

Side by Side Diff: cc/trees/layer_tree_host_impl_unittest.cc

Issue 1063853005: Unify Android Webview and Chrome's fling (Closed) Base URL: https://chromium.googlesource.com/a/chromium/src.git@master
Patch Set: add proguard Created 5 years, 6 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 unified diff | Download patch
« no previous file with comments | « cc/trees/layer_tree_host_impl.cc ('k') | cc/trees/layer_tree_impl.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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/trees/layer_tree_host_impl.h" 5 #include "cc/trees/layer_tree_host_impl.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <cmath> 8 #include <cmath>
9 9
10 #include "base/bind.h" 10 #include "base/bind.h"
(...skipping 3932 matching lines...) Expand 10 before | Expand all | Expand 10 after
3943 host_impl_->active_tree()->InnerViewportScrollLayer(); 3943 host_impl_->active_tree()->InnerViewportScrollLayer();
3944 EXPECT_EQ(gfx::ScrollOffset(0, 0), 3944 EXPECT_EQ(gfx::ScrollOffset(0, 0),
3945 inner_viewport_scroll_layer->MaxScrollOffset()); 3945 inner_viewport_scroll_layer->MaxScrollOffset());
3946 } 3946 }
3947 3947
3948 class TestScrollOffsetDelegate : public LayerScrollOffsetDelegate { 3948 class TestScrollOffsetDelegate : public LayerScrollOffsetDelegate {
3949 public: 3949 public:
3950 TestScrollOffsetDelegate() 3950 TestScrollOffsetDelegate()
3951 : page_scale_factor_(0.f), 3951 : page_scale_factor_(0.f),
3952 min_page_scale_factor_(-1.f), 3952 min_page_scale_factor_(-1.f),
3953 max_page_scale_factor_(-1.f) {} 3953 max_page_scale_factor_(-1.f),
3954 needs_animate_(false) {}
3954 3955
3955 ~TestScrollOffsetDelegate() override {} 3956 ~TestScrollOffsetDelegate() override {}
3956 3957
3957 gfx::ScrollOffset GetTotalScrollOffset() override { 3958 gfx::ScrollOffset GetTotalScrollOffset() override {
3958 return getter_return_value_; 3959 return getter_return_value_;
3959 } 3960 }
3960 3961
3961 bool IsExternalFlingActive() const override { return false; } 3962 bool IsExternalScrollActive() const override { return false; }
3963
3964 void SetNeedsAnimate(const AnimationCallback&) override {
3965 needs_animate_ = true;
3966 }
3962 3967
3963 void UpdateRootLayerState(const gfx::ScrollOffset& total_scroll_offset, 3968 void UpdateRootLayerState(const gfx::ScrollOffset& total_scroll_offset,
3964 const gfx::ScrollOffset& max_scroll_offset, 3969 const gfx::ScrollOffset& max_scroll_offset,
3965 const gfx::SizeF& scrollable_size, 3970 const gfx::SizeF& scrollable_size,
3966 float page_scale_factor, 3971 float page_scale_factor,
3967 float min_page_scale_factor, 3972 float min_page_scale_factor,
3968 float max_page_scale_factor) override { 3973 float max_page_scale_factor) override {
3969 DCHECK(total_scroll_offset.x() <= max_scroll_offset.x()); 3974 DCHECK(total_scroll_offset.x() <= max_scroll_offset.x());
3970 DCHECK(total_scroll_offset.y() <= max_scroll_offset.y()); 3975 DCHECK(total_scroll_offset.y() <= max_scroll_offset.y());
3971 last_set_scroll_offset_ = total_scroll_offset; 3976 last_set_scroll_offset_ = total_scroll_offset;
3972 max_scroll_offset_ = max_scroll_offset; 3977 max_scroll_offset_ = max_scroll_offset;
3973 scrollable_size_ = scrollable_size; 3978 scrollable_size_ = scrollable_size;
3974 page_scale_factor_ = page_scale_factor; 3979 page_scale_factor_ = page_scale_factor;
3975 min_page_scale_factor_ = min_page_scale_factor; 3980 min_page_scale_factor_ = min_page_scale_factor;
3976 max_page_scale_factor_ = max_page_scale_factor; 3981 max_page_scale_factor_ = max_page_scale_factor;
3977 3982
3978 set_getter_return_value(last_set_scroll_offset_); 3983 set_getter_return_value(last_set_scroll_offset_);
3979 } 3984 }
3980 3985
3986 bool GetAndResetNeedsAnimate() {
3987 bool needs_animate = needs_animate_;
3988 needs_animate_ = false;
3989 return needs_animate;
3990 }
3991
3981 gfx::ScrollOffset last_set_scroll_offset() { 3992 gfx::ScrollOffset last_set_scroll_offset() {
3982 return last_set_scroll_offset_; 3993 return last_set_scroll_offset_;
3983 } 3994 }
3984 3995
3985 void set_getter_return_value(const gfx::ScrollOffset& value) { 3996 void set_getter_return_value(const gfx::ScrollOffset& value) {
3986 getter_return_value_ = value; 3997 getter_return_value_ = value;
3987 } 3998 }
3988 3999
3989 gfx::ScrollOffset max_scroll_offset() const { 4000 gfx::ScrollOffset max_scroll_offset() const {
3990 return max_scroll_offset_; 4001 return max_scroll_offset_;
(...skipping 16 matching lines...) Expand all
4007 } 4018 }
4008 4019
4009 private: 4020 private:
4010 gfx::ScrollOffset last_set_scroll_offset_; 4021 gfx::ScrollOffset last_set_scroll_offset_;
4011 gfx::ScrollOffset getter_return_value_; 4022 gfx::ScrollOffset getter_return_value_;
4012 gfx::ScrollOffset max_scroll_offset_; 4023 gfx::ScrollOffset max_scroll_offset_;
4013 gfx::SizeF scrollable_size_; 4024 gfx::SizeF scrollable_size_;
4014 float page_scale_factor_; 4025 float page_scale_factor_;
4015 float min_page_scale_factor_; 4026 float min_page_scale_factor_;
4016 float max_page_scale_factor_; 4027 float max_page_scale_factor_;
4028 bool needs_animate_;
4017 }; 4029 };
4018 4030
4031 // TODO(jdduke): Test root fling animation.
4019 TEST_F(LayerTreeHostImplTest, RootLayerScrollOffsetDelegation) { 4032 TEST_F(LayerTreeHostImplTest, RootLayerScrollOffsetDelegation) {
4020 TestScrollOffsetDelegate scroll_delegate; 4033 TestScrollOffsetDelegate scroll_delegate;
4021 host_impl_->SetViewportSize(gfx::Size(10, 20)); 4034 host_impl_->SetViewportSize(gfx::Size(10, 20));
4022 LayerImpl* scroll_layer = SetupScrollAndContentsLayers(gfx::Size(100, 100)); 4035 LayerImpl* scroll_layer = SetupScrollAndContentsLayers(gfx::Size(100, 100));
4023 LayerImpl* clip_layer = scroll_layer->parent()->parent(); 4036 LayerImpl* clip_layer = scroll_layer->parent()->parent();
4024 clip_layer->SetBounds(gfx::Size(10, 20)); 4037 clip_layer->SetBounds(gfx::Size(10, 20));
4025 4038
4026 // Setting the delegate results in the current scroll offset being set. 4039 // Setting the delegate results in the current scroll offset being set.
4027 gfx::Vector2dF initial_scroll_delta(10.f, 10.f); 4040 gfx::Vector2dF initial_scroll_delta(10.f, 10.f);
4028 scroll_layer->PushScrollOffsetFromMainThread(gfx::ScrollOffset()); 4041 scroll_layer->PushScrollOffsetFromMainThread(gfx::ScrollOffset());
(...skipping 3883 matching lines...) Expand 10 before | Expand all | Expand 10 after
7912 // Hold an unowned pointer to the output surface to use for mock expectations. 7925 // Hold an unowned pointer to the output surface to use for mock expectations.
7913 MockReclaimResourcesOutputSurface* mock_output_surface = output_surface.get(); 7926 MockReclaimResourcesOutputSurface* mock_output_surface = output_surface.get();
7914 7927
7915 CreateHostImpl(DefaultSettings(), output_surface.Pass()); 7928 CreateHostImpl(DefaultSettings(), output_surface.Pass());
7916 EXPECT_CALL(*mock_output_surface, ForceReclaimResources()).Times(1); 7929 EXPECT_CALL(*mock_output_surface, ForceReclaimResources()).Times(1);
7917 host_impl_->BeginCommit(); 7930 host_impl_->BeginCommit();
7918 } 7931 }
7919 7932
7920 } // namespace 7933 } // namespace
7921 } // namespace cc 7934 } // namespace cc
OLDNEW
« no previous file with comments | « cc/trees/layer_tree_host_impl.cc ('k') | cc/trees/layer_tree_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698