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

Unified Diff: cc/trees/layer_tree_host_impl_unittest.cc

Issue 863253002: Update from https://crrev.com/312600 (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 5 years, 11 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/trees/layer_tree_host_impl_unittest.cc
diff --git a/cc/trees/layer_tree_host_impl_unittest.cc b/cc/trees/layer_tree_host_impl_unittest.cc
index 6c46d8f4dba6ea77e7e0ced01c11c8496eae2ffd..7804f2237f2b8ee21da599b9e5f3002832cecff3 100644
--- a/cc/trees/layer_tree_host_impl_unittest.cc
+++ b/cc/trees/layer_tree_host_impl_unittest.cc
@@ -88,6 +88,7 @@ class LayerTreeHostImplTest : public testing::Test,
did_request_redraw_(false),
did_request_animate_(false),
did_request_prepare_tiles_(false),
+ did_complete_page_scale_animation_(false),
reduce_memory_result_(true),
current_limit_bytes_(0),
current_priority_cutoff_value_(0) {
@@ -151,6 +152,9 @@ class LayerTreeHostImplTest : public testing::Test,
}
void DidActivateSyncTree() override {}
void DidPrepareTiles() override {}
+ void DidCompletePageScaleAnimationOnImplThread() override {
+ did_complete_page_scale_animation_ = true;
+ }
void set_reduce_memory_result(bool reduce_memory_result) {
reduce_memory_result_ = reduce_memory_result;
@@ -394,6 +398,7 @@ class LayerTreeHostImplTest : public testing::Test,
bool did_request_redraw_;
bool did_request_animate_;
bool did_request_prepare_tiles_;
+ bool did_complete_page_scale_animation_;
bool reduce_memory_result_;
base::Closure scrollbar_fade_start_;
base::TimeDelta requested_scrollbar_animation_delay_;
@@ -1341,6 +1346,38 @@ TEST_F(LayerTreeHostImplTest, PageScaleAnimationTransferedOnSyncTreeActivate) {
ExpectContains(*scroll_info, scroll_layer->id(), gfx::Vector2d(-50, -50));
}
+TEST_F(LayerTreeHostImplTest, PageScaleAnimationCompletedNotification) {
+ SetupScrollAndContentsLayers(gfx::Size(100, 100));
+ host_impl_->SetViewportSize(gfx::Size(50, 50));
+ DrawFrame();
+
+ LayerImpl* scroll_layer = host_impl_->InnerViewportScrollLayer();
+ DCHECK(scroll_layer);
+
+ base::TimeTicks start_time =
+ base::TimeTicks() + base::TimeDelta::FromSeconds(1);
+ base::TimeDelta duration = base::TimeDelta::FromMilliseconds(100);
+ base::TimeTicks halfway_through_animation = start_time + duration / 2;
+ base::TimeTicks end_time = start_time + duration;
+
+ host_impl_->active_tree()->PushPageScaleFromMainThread(1.f, 0.5f, 4.f);
+ scroll_layer->SetScrollOffset(gfx::ScrollOffset(50, 50));
+
+ did_complete_page_scale_animation_ = false;
+ host_impl_->active_tree()->SetPendingPageScaleAnimation(
+ scoped_ptr<PendingPageScaleAnimation>(new PendingPageScaleAnimation(
+ gfx::Vector2d(), false, 2.f, duration)));
+ host_impl_->ActivateSyncTree();
+ host_impl_->Animate(start_time);
+ EXPECT_FALSE(did_complete_page_scale_animation_);
+
+ host_impl_->Animate(halfway_through_animation);
+ EXPECT_FALSE(did_complete_page_scale_animation_);
+
+ host_impl_->Animate(end_time);
+ EXPECT_TRUE(did_complete_page_scale_animation_);
+}
+
class LayerTreeHostImplOverridePhysicalTime : public LayerTreeHostImpl {
public:
LayerTreeHostImplOverridePhysicalTime(
@@ -4717,49 +4754,6 @@ TEST_F(LayerTreeHostImplViewportCoveredTest, ViewportCoveredScaled) {
TestLayerIsLargerThanViewport();
}
-TEST_F(LayerTreeHostImplViewportCoveredTest, ViewportCoveredOverhangBitmap) {
- viewport_size_ = gfx::Size(1000, 1000);
-
- bool always_draw = false;
- CreateHostImpl(DefaultSettings(), CreateFakeOutputSurface(always_draw));
-
- host_impl_->SetViewportSize(DipSizeToPixelSize(viewport_size_));
- SetupActiveTreeLayers();
-
- // Specify an overhang bitmap to use.
- bool is_opaque = false;
- UIResourceBitmap ui_resource_bitmap(gfx::Size(2, 2), is_opaque);
- ui_resource_bitmap.SetWrapMode(UIResourceBitmap::REPEAT);
- UIResourceId ui_resource_id = 12345;
- host_impl_->CreateUIResource(ui_resource_id, ui_resource_bitmap);
- host_impl_->SetOverhangUIResource(ui_resource_id, gfx::Size(32, 32));
- set_gutter_quad_material(DrawQuad::TEXTURE_CONTENT);
- set_gutter_texture_size(gfx::Size(32, 32));
-
- TestLayerCoversFullViewport();
- TestEmptyLayer();
- TestLayerInMiddleOfViewport();
- TestLayerIsLargerThanViewport();
-
- // Change the resource size.
- host_impl_->SetOverhangUIResource(ui_resource_id, gfx::Size(128, 16));
- set_gutter_texture_size(gfx::Size(128, 16));
-
- TestLayerCoversFullViewport();
- TestEmptyLayer();
- TestLayerInMiddleOfViewport();
- TestLayerIsLargerThanViewport();
-
- // Change the device scale factor
- host_impl_->SetDeviceScaleFactor(2.f);
- host_impl_->SetViewportSize(DipSizeToPixelSize(viewport_size_));
-
- TestLayerCoversFullViewport();
- TestEmptyLayer();
- TestLayerInMiddleOfViewport();
- TestLayerIsLargerThanViewport();
-}
-
TEST_F(LayerTreeHostImplViewportCoveredTest, ActiveTreeGrowViewportInvalid) {
viewport_size_ = gfx::Size(1000, 1000);

Powered by Google App Engine
This is Rietveld 408576698