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

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

Issue 279013002: Remove CompositeAndReadback from LayerTreeHost(Impl) and the Proxys. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rm-cnr-lth-proxy-renderer: rebase-on-drawresult Created 6 years, 7 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 | Annotate | Revision Log
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.h" 5 #include "cc/trees/layer_tree_host.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/auto_reset.h" 9 #include "base/auto_reset.h"
10 #include "base/synchronization/lock.h" 10 #include "base/synchronization/lock.h"
(...skipping 421 matching lines...) Expand 10 before | Expand all | Expand 10 after
432 432
433 private: 433 private:
434 FakeContentLayerClient client_; 434 FakeContentLayerClient client_;
435 scoped_refptr<Layer> root_layer_; 435 scoped_refptr<Layer> root_layer_;
436 scoped_refptr<FakePaintedScrollbarLayer> scrollbar_; 436 scoped_refptr<FakePaintedScrollbarLayer> scrollbar_;
437 }; 437 };
438 438
439 SINGLE_AND_MULTI_THREAD_TEST_F( 439 SINGLE_AND_MULTI_THREAD_TEST_F(
440 LayerTreeHostTestNoExtraCommitFromScrollbarInvalidate); 440 LayerTreeHostTestNoExtraCommitFromScrollbarInvalidate);
441 441
442 class LayerTreeHostTestCompositeAndReadback : public LayerTreeHostTest {
443 public:
444 LayerTreeHostTestCompositeAndReadback() : num_commits_(0) {}
445
446 virtual void BeginTest() OVERRIDE { PostSetNeedsCommitToMainThread(); }
447
448 virtual void DidCommit() OVERRIDE {
449 num_commits_++;
450 if (num_commits_ == 1) {
451 char pixels[4];
452 layer_tree_host()->CompositeAndReadback(&pixels, gfx::Rect(0, 0, 1, 1));
453 } else if (num_commits_ == 2) {
454 // This is inside the readback. We should get another commit after it.
455 } else if (num_commits_ == 3) {
456 EndTest();
457 } else {
458 NOTREACHED();
459 }
460 }
461
462 virtual void AfterTest() OVERRIDE {}
463
464 private:
465 int num_commits_;
466 };
467
468 MULTI_THREAD_TEST_F(LayerTreeHostTestCompositeAndReadback);
469
470 class LayerTreeHostTestCompositeAndReadbackBeforePreviousCommitDraws
471 : public LayerTreeHostTest {
472 public:
473 LayerTreeHostTestCompositeAndReadbackBeforePreviousCommitDraws()
474 : num_commits_(0) {}
475
476 virtual void BeginTest() OVERRIDE { PostSetNeedsCommitToMainThread(); }
477
478 virtual void DidCommit() OVERRIDE {
479 num_commits_++;
480 if (num_commits_ == 1) {
481 layer_tree_host()->SetNeedsCommit();
482 } else if (num_commits_ == 2) {
483 char pixels[4];
484 layer_tree_host()->CompositeAndReadback(&pixels, gfx::Rect(0, 0, 1, 1));
485 } else if (num_commits_ == 3) {
486 // This is inside the readback. We should get another commit after it.
487 } else if (num_commits_ == 4) {
488 EndTest();
489 } else {
490 NOTREACHED();
491 }
492 }
493
494 virtual void AfterTest() OVERRIDE {}
495
496 private:
497 int num_commits_;
498 };
499
500 MULTI_THREAD_TEST_F(
501 LayerTreeHostTestCompositeAndReadbackBeforePreviousCommitDraws);
502
503 class LayerTreeHostTestCompositeAndReadbackDuringForcedDraw
504 : public LayerTreeHostTest {
505 protected:
506 static const int kFirstCommitSourceFrameNumber = 0;
507 static const int kReadbackSourceFrameNumber = 1;
508 static const int kReadbackReplacementAndForcedDrawSourceFrameNumber = 2;
509
510 LayerTreeHostTestCompositeAndReadbackDuringForcedDraw()
511 : did_post_readback_(false) {}
512
513 virtual void InitializeSettings(LayerTreeSettings* settings) OVERRIDE {
514 // This enables forced draws after a single prepare to draw failure.
515 settings->timeout_and_draw_when_animation_checkerboards = true;
516 settings->maximum_number_of_failed_draws_before_draw_is_forced_ = 1;
517 }
518
519 virtual void BeginTest() OVERRIDE { PostSetNeedsCommitToMainThread(); }
520
521 virtual DrawResult PrepareToDrawOnThread(
522 LayerTreeHostImpl* host_impl,
523 LayerTreeHostImpl::FrameData* frame_data,
524 DrawResult draw_result) OVERRIDE {
525 int sfn = host_impl->active_tree()->source_frame_number();
526 EXPECT_TRUE(sfn == kFirstCommitSourceFrameNumber ||
527 sfn == kReadbackSourceFrameNumber ||
528 sfn == kReadbackReplacementAndForcedDrawSourceFrameNumber)
529 << sfn;
530
531 // Before we react to the failed draw by initiating the forced draw
532 // sequence, start a readback on the main thread.
533 if (sfn == kFirstCommitSourceFrameNumber && !did_post_readback_) {
534 did_post_readback_ = true;
535 PostReadbackToMainThread();
536 }
537
538 // Aborting for checkerboarding animations will result in a forced draw.
539 return DRAW_ABORTED_CHECKERBOARD_ANIMATIONS;
540 }
541
542 virtual void DrawLayersOnThread(LayerTreeHostImpl* host_impl) OVERRIDE {
543 // We should only draw for the readback and the forced draw.
544 int sfn = host_impl->active_tree()->source_frame_number();
545 EXPECT_TRUE(sfn == kReadbackSourceFrameNumber ||
546 sfn == kReadbackReplacementAndForcedDrawSourceFrameNumber)
547 << sfn;
548 }
549
550 virtual void SwapBuffersOnThread(LayerTreeHostImpl* host_impl,
551 bool result) OVERRIDE {
552 // We should only swap for the forced draw.
553 int sfn = host_impl->active_tree()->source_frame_number();
554 EXPECT_TRUE(sfn == kReadbackReplacementAndForcedDrawSourceFrameNumber)
555 << sfn;
556 EndTest();
557 }
558
559 virtual void AfterTest() OVERRIDE {}
560
561 bool did_post_readback_;
562 };
563
564 MULTI_THREAD_TEST_F(LayerTreeHostTestCompositeAndReadbackDuringForcedDraw);
565
566 class LayerTreeHostTestCompositeAndReadbackAfterForcedDraw
567 : public LayerTreeHostTest {
568 protected:
569 static const int kFirstCommitSourceFrameNumber = 0;
570 static const int kForcedDrawSourceFrameNumber = 1;
571 static const int kReadbackSourceFrameNumber = 2;
572 static const int kReadbackReplacementSourceFrameNumber = 3;
573
574 virtual void InitializeSettings(LayerTreeSettings* settings) OVERRIDE {
575 // This enables forced draws after a single prepare to draw failure.
576 settings->timeout_and_draw_when_animation_checkerboards = true;
577 settings->maximum_number_of_failed_draws_before_draw_is_forced_ = 1;
578 }
579
580 virtual void BeginTest() OVERRIDE { PostSetNeedsCommitToMainThread(); }
581
582 virtual DrawResult PrepareToDrawOnThread(
583 LayerTreeHostImpl* host_impl,
584 LayerTreeHostImpl::FrameData* frame_data,
585 DrawResult draw_result) OVERRIDE {
586 int sfn = host_impl->active_tree()->source_frame_number();
587 EXPECT_TRUE(sfn == kFirstCommitSourceFrameNumber ||
588 sfn == kForcedDrawSourceFrameNumber ||
589 sfn == kReadbackSourceFrameNumber ||
590 sfn == kReadbackReplacementSourceFrameNumber)
591 << sfn;
592
593 // Aborting for checkerboarding animations will result in a forced draw.
594 return DRAW_ABORTED_CHECKERBOARD_ANIMATIONS;
595 }
596
597 virtual void DidCommit() OVERRIDE {
598 if (layer_tree_host()->source_frame_number() ==
599 kForcedDrawSourceFrameNumber) {
600 // Avoid aborting the forced draw commit so source_frame_number
601 // increments.
602 layer_tree_host()->SetNeedsCommit();
603 } else if (layer_tree_host()->source_frame_number() ==
604 kReadbackSourceFrameNumber) {
605 // Perform a readback immediately after the forced draw's commit.
606 char pixels[4];
607 layer_tree_host()->CompositeAndReadback(&pixels, gfx::Rect(0, 0, 1, 1));
608 }
609 }
610
611 virtual void DrawLayersOnThread(LayerTreeHostImpl* host_impl) OVERRIDE {
612 // We should only draw for the the forced draw, readback, and
613 // replacement commit.
614 int sfn = host_impl->active_tree()->source_frame_number();
615 EXPECT_TRUE(sfn == kForcedDrawSourceFrameNumber ||
616 sfn == kReadbackSourceFrameNumber ||
617 sfn == kReadbackReplacementSourceFrameNumber)
618 << sfn;
619 }
620
621 virtual void SwapBuffersOnThread(LayerTreeHostImpl* host_impl,
622 bool result) OVERRIDE {
623 // We should only swap for the forced draw and replacement commit.
624 int sfn = host_impl->active_tree()->source_frame_number();
625 EXPECT_TRUE(sfn == kForcedDrawSourceFrameNumber ||
626 sfn == kReadbackReplacementSourceFrameNumber)
627 << sfn;
628
629 if (sfn == kReadbackReplacementSourceFrameNumber)
630 EndTest();
631 }
632
633 virtual void AfterTest() OVERRIDE {}
634 };
635
636 MULTI_THREAD_TEST_F(LayerTreeHostTestCompositeAndReadbackAfterForcedDraw);
637
638 class LayerTreeHostTestSetNextCommitForcesRedraw : public LayerTreeHostTest { 442 class LayerTreeHostTestSetNextCommitForcesRedraw : public LayerTreeHostTest {
639 public: 443 public:
640 LayerTreeHostTestSetNextCommitForcesRedraw() 444 LayerTreeHostTestSetNextCommitForcesRedraw()
641 : num_draws_(0), 445 : num_draws_(0),
642 bounds_(50, 50), 446 bounds_(50, 50),
643 invalid_rect_(10, 10, 20, 20), 447 invalid_rect_(10, 10, 20, 20),
644 root_layer_(ContentLayer::Create(&client_)) {} 448 root_layer_(ContentLayer::Create(&client_)) {}
645 449
646 virtual void BeginTest() OVERRIDE { 450 virtual void BeginTest() OVERRIDE {
647 root_layer_->SetIsDrawable(true); 451 root_layer_->SetIsDrawable(true);
(...skipping 234 matching lines...) Expand 10 before | Expand all | Expand 10 after
882 686
883 private: 687 private:
884 scoped_refptr<Layer> root_layer_; 688 scoped_refptr<Layer> root_layer_;
885 scoped_refptr<Layer> parent_layer_; 689 scoped_refptr<Layer> parent_layer_;
886 scoped_refptr<Layer> child_layer_; 690 scoped_refptr<Layer> child_layer_;
887 }; 691 };
888 692
889 SINGLE_AND_MULTI_THREAD_TEST_F( 693 SINGLE_AND_MULTI_THREAD_TEST_F(
890 LayerTreeHostTestUndrawnLayersPushContentBoundsLater); 694 LayerTreeHostTestUndrawnLayersPushContentBoundsLater);
891 695
892 // If the layerTreeHost says it can't draw, Then we should not try to draw.
893 class LayerTreeHostTestCanDrawBlocksDrawing : public LayerTreeHostTest {
894 public:
895 LayerTreeHostTestCanDrawBlocksDrawing() : done_(false) {}
896
897 virtual void BeginTest() OVERRIDE { PostSetNeedsCommitToMainThread(); }
898
899 virtual void DrawLayersOnThread(LayerTreeHostImpl* impl) OVERRIDE {
900 if (done_)
901 return;
902 // Only the initial draw should bring us here.
903 EXPECT_TRUE(impl->CanDraw());
904 EXPECT_EQ(0, impl->active_tree()->source_frame_number());
905 }
906
907 virtual void CommitCompleteOnThread(LayerTreeHostImpl* impl) OVERRIDE {
908 if (done_)
909 return;
910 if (LastCommittedSourceFrameNumber(impl) >= 1) {
911 // After the first commit, we should not be able to draw.
912 EXPECT_FALSE(impl->CanDraw());
913 }
914 }
915
916 virtual void DidCommit() OVERRIDE {
917 switch (layer_tree_host()->source_frame_number()) {
918 case 1:
919 // Make the viewport empty so the host says it can't draw.
920 layer_tree_host()->SetViewportSize(gfx::Size(0, 0));
921 break;
922 case 2: {
923 char pixels[4];
924 layer_tree_host()->CompositeAndReadback(&pixels, gfx::Rect(0, 0, 1, 1));
925 break;
926 }
927 case 3:
928 // Let it draw so we go idle and end the test.
929 layer_tree_host()->SetViewportSize(gfx::Size(1, 1));
930 done_ = true;
931 EndTest();
932 break;
933 }
934 }
935
936 virtual void AfterTest() OVERRIDE {}
937
938 private:
939 bool done_;
940 };
941
942 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostTestCanDrawBlocksDrawing);
943
944 // A compositeAndReadback while invisible should force a normal commit without
945 // assertion.
946 class LayerTreeHostTestCompositeAndReadbackWhileInvisible
947 : public LayerTreeHostTest {
948 public:
949 LayerTreeHostTestCompositeAndReadbackWhileInvisible() : num_commits_(0) {}
950
951 virtual void BeginTest() OVERRIDE { PostSetNeedsCommitToMainThread(); }
952
953 virtual void DidCommitAndDrawFrame() OVERRIDE {
954 num_commits_++;
955 if (num_commits_ == 1) {
956 layer_tree_host()->SetVisible(false);
957 layer_tree_host()->SetNeedsCommit();
958 layer_tree_host()->SetNeedsCommit();
959 char pixels[4];
960 layer_tree_host()->CompositeAndReadback(&pixels, gfx::Rect(0, 0, 1, 1));
961 } else {
962 EndTest();
963 }
964 }
965
966 virtual void AfterTest() OVERRIDE {}
967
968 private:
969 int num_commits_;
970 };
971
972 MULTI_THREAD_TEST_F(LayerTreeHostTestCompositeAndReadbackWhileInvisible);
973
974 class LayerTreeHostTestAbortFrameWhenInvisible : public LayerTreeHostTest { 696 class LayerTreeHostTestAbortFrameWhenInvisible : public LayerTreeHostTest {
975 public: 697 public:
976 LayerTreeHostTestAbortFrameWhenInvisible() {} 698 LayerTreeHostTestAbortFrameWhenInvisible() {}
977 699
978 virtual void BeginTest() OVERRIDE { 700 virtual void BeginTest() OVERRIDE {
979 // Request a commit (from the main thread), Which will trigger the commit 701 // Request a commit (from the main thread), Which will trigger the commit
980 // flow from the impl side. 702 // flow from the impl side.
981 layer_tree_host()->SetNeedsCommit(); 703 layer_tree_host()->SetNeedsCommit();
982 // Then mark ourselves as not visible before processing any more messages 704 // Then mark ourselves as not visible before processing any more messages
983 // on the main thread. 705 // on the main thread.
(...skipping 410 matching lines...) Expand 10 before | Expand all | Expand 10 after
1394 1116
1395 LayerImpl* root = impl->active_tree()->root_layer(); 1117 LayerImpl* root = impl->active_tree()->root_layer();
1396 LayerImpl* child = impl->active_tree()->root_layer()->children()[0]; 1118 LayerImpl* child = impl->active_tree()->root_layer()->children()[0];
1397 1119
1398 // Positions remain in layout pixels. 1120 // Positions remain in layout pixels.
1399 EXPECT_EQ(gfx::Point(0, 0), root->position()); 1121 EXPECT_EQ(gfx::Point(0, 0), root->position());
1400 EXPECT_EQ(gfx::Point(2, 2), child->position()); 1122 EXPECT_EQ(gfx::Point(2, 2), child->position());
1401 1123
1402 // Compute all the layer transforms for the frame. 1124 // Compute all the layer transforms for the frame.
1403 LayerTreeHostImpl::FrameData frame_data; 1125 LayerTreeHostImpl::FrameData frame_data;
1404 impl->PrepareToDraw(&frame_data, gfx::Rect()); 1126 impl->PrepareToDraw(&frame_data);
1405 impl->DidDrawAllLayers(frame_data); 1127 impl->DidDrawAllLayers(frame_data);
1406 1128
1407 const LayerImplList& render_surface_layer_list = 1129 const LayerImplList& render_surface_layer_list =
1408 *frame_data.render_surface_layer_list; 1130 *frame_data.render_surface_layer_list;
1409 1131
1410 // Both layers should be drawing into the root render surface. 1132 // Both layers should be drawing into the root render surface.
1411 ASSERT_EQ(1u, render_surface_layer_list.size()); 1133 ASSERT_EQ(1u, render_surface_layer_list.size());
1412 ASSERT_EQ(root->render_surface(), 1134 ASSERT_EQ(root->render_surface(),
1413 render_surface_layer_list[0]->render_surface()); 1135 render_surface_layer_list[0]->render_surface());
1414 ASSERT_EQ(2u, root->render_surface()->layer_list().size()); 1136 ASSERT_EQ(2u, root->render_surface()->layer_list().size());
(...skipping 423 matching lines...) Expand 10 before | Expand all | Expand 10 after
1838 virtual void AfterTest() OVERRIDE {} 1560 virtual void AfterTest() OVERRIDE {}
1839 1561
1840 private: 1562 private:
1841 bool once_; 1563 bool once_;
1842 base::Lock lock_; 1564 base::Lock lock_;
1843 int draw_count_; 1565 int draw_count_;
1844 }; 1566 };
1845 1567
1846 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostTestFinishAllRendering); 1568 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostTestFinishAllRendering);
1847 1569
1848 class LayerTreeHostTestCompositeAndReadbackCleanup : public LayerTreeHostTest {
1849 public:
1850 virtual void BeginTest() OVERRIDE {
1851 Layer* root_layer = layer_tree_host()->root_layer();
1852
1853 char pixels[4];
1854 layer_tree_host()->CompositeAndReadback(static_cast<void*>(&pixels),
1855 gfx::Rect(0, 0, 1, 1));
1856 EXPECT_FALSE(root_layer->render_surface());
1857
1858 EndTest();
1859 }
1860
1861 virtual void AfterTest() OVERRIDE {}
1862 };
1863
1864 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostTestCompositeAndReadbackCleanup);
1865
1866 class LayerTreeHostTestSurfaceNotAllocatedForLayersOutsideMemoryLimit 1570 class LayerTreeHostTestSurfaceNotAllocatedForLayersOutsideMemoryLimit
1867 : public LayerTreeHostTest { 1571 : public LayerTreeHostTest {
1868 protected: 1572 protected:
1869 virtual void SetupTree() OVERRIDE { 1573 virtual void SetupTree() OVERRIDE {
1870 root_layer_ = FakeContentLayer::Create(&client_); 1574 root_layer_ = FakeContentLayer::Create(&client_);
1871 root_layer_->SetBounds(gfx::Size(100, 100)); 1575 root_layer_->SetBounds(gfx::Size(100, 100));
1872 1576
1873 surface_layer1_ = FakeContentLayer::Create(&client_); 1577 surface_layer1_ = FakeContentLayer::Create(&client_);
1874 surface_layer1_->SetBounds(gfx::Size(100, 100)); 1578 surface_layer1_->SetBounds(gfx::Size(100, 100));
1875 surface_layer1_->SetForceRenderSurface(true); 1579 surface_layer1_->SetForceRenderSurface(true);
(...skipping 1102 matching lines...) Expand 10 before | Expand all | Expand 10 after
2978 class LayerTreeHostTestNumFramesPending : public LayerTreeHostTest { 2682 class LayerTreeHostTestNumFramesPending : public LayerTreeHostTest {
2979 public: 2683 public:
2980 virtual void BeginTest() OVERRIDE { 2684 virtual void BeginTest() OVERRIDE {
2981 frame_ = 0; 2685 frame_ = 0;
2982 PostSetNeedsCommitToMainThread(); 2686 PostSetNeedsCommitToMainThread();
2983 } 2687 }
2984 2688
2985 // Round 1: commit + draw 2689 // Round 1: commit + draw
2986 // Round 2: commit only (no draw/swap) 2690 // Round 2: commit only (no draw/swap)
2987 // Round 3: draw only (no commit) 2691 // Round 3: draw only (no commit)
2988 // Round 4: composite & readback (2 commits, no draw/swap)
2989 // Round 5: commit + draw
2990 2692
2991 virtual void DidCommit() OVERRIDE { 2693 virtual void DidCommit() OVERRIDE {
2992 int commit = layer_tree_host()->source_frame_number(); 2694 int commit = layer_tree_host()->source_frame_number();
2993 switch (commit) { 2695 switch (commit) {
2994 case 2: 2696 case 2:
2995 // Round 2 done. 2697 // Round 2 done.
2996 EXPECT_EQ(1, frame_); 2698 EXPECT_EQ(1, frame_);
2997 layer_tree_host()->SetNeedsRedraw(); 2699 layer_tree_host()->SetNeedsRedraw();
2998 break; 2700 break;
2999 case 3:
3000 // CompositeAndReadback in Round 4, first commit.
3001 EXPECT_EQ(2, frame_);
3002 break;
3003 case 4:
3004 // Round 4 done.
3005 EXPECT_EQ(2, frame_);
3006 layer_tree_host()->SetNeedsCommit();
3007 layer_tree_host()->SetNeedsRedraw();
3008 break;
3009 } 2701 }
3010 } 2702 }
3011 2703
3012 virtual void DidCompleteSwapBuffers() OVERRIDE { 2704 virtual void DidCompleteSwapBuffers() OVERRIDE {
3013 int commit = layer_tree_host()->source_frame_number(); 2705 int commit = layer_tree_host()->source_frame_number();
3014 ++frame_; 2706 ++frame_;
3015 char pixels[4] = {0};
3016 switch (frame_) { 2707 switch (frame_) {
3017 case 1: 2708 case 1:
3018 // Round 1 done. 2709 // Round 1 done.
3019 EXPECT_EQ(1, commit); 2710 EXPECT_EQ(1, commit);
3020 layer_tree_host()->SetNeedsCommit(); 2711 layer_tree_host()->SetNeedsCommit();
3021 break; 2712 break;
3022 case 2: 2713 case 2:
3023 // Round 3 done. 2714 // Round 3 done.
3024 EXPECT_EQ(2, commit); 2715 EXPECT_EQ(2, commit);
3025 layer_tree_host()->CompositeAndReadback(pixels, gfx::Rect(0, 0, 1, 1));
3026 break;
3027 case 3:
3028 // Round 5 done.
3029 EXPECT_EQ(5, commit);
3030 EndTest(); 2716 EndTest();
3031 break; 2717 break;
3032 } 2718 }
3033 } 2719 }
3034 2720
3035 virtual void AfterTest() OVERRIDE {} 2721 virtual void AfterTest() OVERRIDE {}
3036 2722
3037 protected: 2723 protected:
3038 int frame_; 2724 int frame_;
3039 }; 2725 };
(...skipping 2243 matching lines...) Expand 10 before | Expand all | Expand 10 after
5283 const gfx::Size bounds_; 4969 const gfx::Size bounds_;
5284 FakeContentLayerClient client_; 4970 FakeContentLayerClient client_;
5285 scoped_refptr<ContentLayerWithUpdateTracking> content_layer_; 4971 scoped_refptr<ContentLayerWithUpdateTracking> content_layer_;
5286 scoped_refptr<FakePictureLayer> picture_layer_; 4972 scoped_refptr<FakePictureLayer> picture_layer_;
5287 Layer* child_layer_; 4973 Layer* child_layer_;
5288 }; 4974 };
5289 4975
5290 MULTI_THREAD_TEST_F(LayerTreeHostTestContinuousPainting); 4976 MULTI_THREAD_TEST_F(LayerTreeHostTestContinuousPainting);
5291 4977
5292 } // namespace cc 4978 } // namespace cc
OLDNEW
« no previous file with comments | « cc/trees/layer_tree_host_pixeltest_readback.cc ('k') | cc/trees/layer_tree_host_unittest_animation.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698