OLD | NEW |
1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 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/layer_tree_host.h" | 5 #include "cc/layer_tree_host.h" |
6 | 6 |
7 #include "cc/content_layer.h" | 7 #include "cc/content_layer.h" |
8 #include "cc/layer.h" | 8 #include "cc/layer.h" |
9 #include "cc/layer_impl.h" | 9 #include "cc/layer_impl.h" |
10 #include "cc/layer_tree_impl.h" | 10 #include "cc/layer_tree_impl.h" |
(...skipping 223 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
234 | 234 |
235 TEST_F(LayerTreeHostScrollTestFractionalScroll, runMultiThread) | 235 TEST_F(LayerTreeHostScrollTestFractionalScroll, runMultiThread) |
236 { | 236 { |
237 runTest(true); | 237 runTest(true); |
238 } | 238 } |
239 | 239 |
240 class LayerTreeHostScrollTestCaseWithChild : | 240 class LayerTreeHostScrollTestCaseWithChild : |
241 public LayerTreeHostScrollTest, | 241 public LayerTreeHostScrollTest, |
242 public WebKit::WebLayerScrollClient { | 242 public WebKit::WebLayerScrollClient { |
243 public: | 243 public: |
244 LayerTreeHostScrollTestCaseWithChild( | 244 LayerTreeHostScrollTestCaseWithChild() |
245 float device_scale_factor, bool scroll_child_layer) | 245 : initial_offset_(10, 20), |
246 : device_scale_factor_(device_scale_factor), | |
247 scroll_child_layer_(scroll_child_layer), | |
248 initial_offset_(10, 20), | |
249 javascript_scroll_(40, 5), | 246 javascript_scroll_(40, 5), |
250 scroll_amount_(2, -1), | 247 scroll_amount_(2, -1), |
251 num_scrolls_(0) { | 248 num_scrolls_(0) { |
252 } | 249 } |
253 | 250 |
254 virtual void setupTree() OVERRIDE { | 251 virtual void setupTree() OVERRIDE { |
255 m_layerTreeHost->setDeviceScaleFactor(device_scale_factor_); | 252 m_layerTreeHost->setDeviceScaleFactor(device_scale_factor_); |
256 | 253 |
257 scoped_refptr<Layer> root_layer = Layer::create(); | 254 scoped_refptr<Layer> root_layer = Layer::create(); |
258 root_layer->setBounds(gfx::Size(10, 10)); | 255 root_layer->setBounds(gfx::Size(10, 10)); |
(...skipping 170 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
429 EXPECT_EQ(0, num_scrolls_); | 426 EXPECT_EQ(0, num_scrolls_); |
430 EXPECT_VECTOR_EQ( | 427 EXPECT_VECTOR_EQ( |
431 javascript_scroll_ + scroll_amount_, | 428 javascript_scroll_ + scroll_amount_, |
432 final_scroll_offset_); | 429 final_scroll_offset_); |
433 } else { | 430 } else { |
434 EXPECT_EQ(2, num_scrolls_); | 431 EXPECT_EQ(2, num_scrolls_); |
435 EXPECT_VECTOR_EQ(gfx::Vector2d(), final_scroll_offset_); | 432 EXPECT_VECTOR_EQ(gfx::Vector2d(), final_scroll_offset_); |
436 } | 433 } |
437 } | 434 } |
438 | 435 |
439 private: | 436 protected: |
440 float device_scale_factor_; | 437 float device_scale_factor_; |
441 bool scroll_child_layer_; | 438 bool scroll_child_layer_; |
| 439 |
442 gfx::Vector2d initial_offset_; | 440 gfx::Vector2d initial_offset_; |
443 gfx::Vector2d javascript_scroll_; | 441 gfx::Vector2d javascript_scroll_; |
444 gfx::Vector2d scroll_amount_; | 442 gfx::Vector2d scroll_amount_; |
445 int num_scrolls_; | 443 int num_scrolls_; |
446 gfx::Vector2d final_scroll_offset_; | 444 gfx::Vector2d final_scroll_offset_; |
447 | 445 |
448 FakeContentLayerClient fake_content_layer_client_; | 446 FakeContentLayerClient fake_content_layer_client_; |
449 | 447 |
450 scoped_refptr<Layer> root_scroll_layer_; | 448 scoped_refptr<Layer> root_scroll_layer_; |
451 scoped_refptr<Layer> child_layer_; | 449 scoped_refptr<Layer> child_layer_; |
452 scoped_refptr<Layer> expected_scroll_layer_; | 450 scoped_refptr<Layer> expected_scroll_layer_; |
453 scoped_refptr<Layer> expected_no_scroll_layer_; | 451 scoped_refptr<Layer> expected_no_scroll_layer_; |
454 }; | 452 }; |
455 | 453 |
456 MULTI_THREAD_TEST_P2(LayerTreeHostScrollTestCaseWithChild, | 454 TEST_F(LayerTreeHostScrollTestCaseWithChild, DeviceScaleFactor1_ScrollChild) { |
457 DeviceScaleFactor1, 1.0f, | 455 device_scale_factor_ = 1.f; |
458 ScrollChild, true) | 456 scroll_child_layer_ = true; |
459 MULTI_THREAD_TEST_P2(LayerTreeHostScrollTestCaseWithChild, | 457 runTest(true); |
460 DeviceScaleFactor15, 1.5f, | 458 } |
461 ScrollChild, true) | 459 |
462 MULTI_THREAD_TEST_P2(LayerTreeHostScrollTestCaseWithChild, | 460 TEST_F(LayerTreeHostScrollTestCaseWithChild, DeviceScaleFactor15_ScrollChild) { |
463 DeviceScaleFactor2, 2.0f, | 461 device_scale_factor_ = 1.5f; |
464 ScrollChild, true) | 462 scroll_child_layer_ = true; |
465 MULTI_THREAD_TEST_P2(LayerTreeHostScrollTestCaseWithChild, | 463 runTest(true); |
466 DeviceScaleFactor1, 1.0f, | 464 } |
467 ScrollRootScrollLayer, false) | 465 |
468 MULTI_THREAD_TEST_P2(LayerTreeHostScrollTestCaseWithChild, | 466 TEST_F(LayerTreeHostScrollTestCaseWithChild, DeviceScaleFactor2_ScrollChild) { |
469 DeviceScaleFactor15, 1.5f, | 467 device_scale_factor_ = 2.f; |
470 ScrollRootScrollLayer, false) | 468 scroll_child_layer_ = true; |
471 MULTI_THREAD_TEST_P2(LayerTreeHostScrollTestCaseWithChild, | 469 runTest(true); |
472 DeviceScaleFactor2, 2.0f, | 470 } |
473 ScrollRootScrollLayer, false) | 471 |
| 472 TEST_F(LayerTreeHostScrollTestCaseWithChild, |
| 473 DeviceScaleFactor1_ScrollRootScrollLayer) { |
| 474 device_scale_factor_ = 1.f; |
| 475 scroll_child_layer_ = false; |
| 476 runTest(true); |
| 477 } |
| 478 |
| 479 TEST_F(LayerTreeHostScrollTestCaseWithChild, |
| 480 DeviceScaleFactor15_ScrollRootScrollLayer) { |
| 481 device_scale_factor_ = 1.5f; |
| 482 scroll_child_layer_ = false; |
| 483 runTest(true); |
| 484 } |
| 485 |
| 486 TEST_F(LayerTreeHostScrollTestCaseWithChild, |
| 487 DeviceScaleFactor2_ScrollRootScrollLayer) { |
| 488 device_scale_factor_ = 2.f; |
| 489 scroll_child_layer_ = false; |
| 490 runTest(true); |
| 491 } |
474 | 492 |
475 } // namespace | 493 } // namespace |
476 } // namespace cc | 494 } // namespace cc |
OLD | NEW |