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

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

Issue 2270273002: cc : Add OnFilterAnimated to effect tree (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: comment Created 4 years, 3 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/layers/layer_impl_unittest.cc ('k') | cc/trees/layer_tree_host_impl.cc » ('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/damage_tracker.h" 5 #include "cc/trees/damage_tracker.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include "cc/base/math_util.h" 9 #include "cc/base/math_util.h"
10 #include "cc/layers/layer_impl.h" 10 #include "cc/layers/layer_impl.h"
(...skipping 564 matching lines...) Expand 10 before | Expand all | Expand 10 after
575 575
576 FilterOperations filters; 576 FilterOperations filters;
577 filters.Append(FilterOperation::CreateReferenceFilter( 577 filters.Append(FilterOperation::CreateReferenceFilter(
578 SkBlurImageFilter::Make(2, 2, nullptr))); 578 SkBlurImageFilter::Make(2, 2, nullptr)));
579 579
580 // Setting the filter will damage the whole surface. 580 // Setting the filter will damage the whole surface.
581 ClearDamageForAllSurfaces(root); 581 ClearDamageForAllSurfaces(root);
582 child->test_properties()->force_render_surface = true; 582 child->test_properties()->force_render_surface = true;
583 root->layer_tree_impl()->property_trees()->needs_rebuild = true; 583 root->layer_tree_impl()->property_trees()->needs_rebuild = true;
584 EmulateDrawingOneFrame(root); 584 EmulateDrawingOneFrame(root);
585 child->OnFilterAnimated(filters); 585 child->layer_tree_impl()->property_trees()->effect_tree.OnFilterAnimated(
586 filters, child->effect_tree_index(), child->layer_tree_impl());
586 EmulateDrawingOneFrame(root); 587 EmulateDrawingOneFrame(root);
587 root_damage_rect = 588 root_damage_rect =
588 root->render_surface()->damage_tracker()->current_damage_rect(); 589 root->render_surface()->damage_tracker()->current_damage_rect();
589 child_damage_rect = 590 child_damage_rect =
590 child->render_surface()->damage_tracker()->current_damage_rect(); 591 child->render_surface()->damage_tracker()->current_damage_rect();
591 592
592 // gfx::Rect(100, 100, 30, 30), expanded by 6px for the 2px blur filter. 593 // gfx::Rect(100, 100, 30, 30), expanded by 6px for the 2px blur filter.
593 EXPECT_EQ(gfx::Rect(94, 94, 42, 42), root_damage_rect); 594 EXPECT_EQ(gfx::Rect(94, 94, 42, 42), root_damage_rect);
594 595
595 // gfx::Rect(0, 0, 30, 30), expanded by 6px for the 2px blur filter. 596 // gfx::Rect(0, 0, 30, 30), expanded by 6px for the 2px blur filter.
(...skipping 29 matching lines...) Expand all
625 SkBlurImageFilter::Make(2, 2, nullptr))); 626 SkBlurImageFilter::Make(2, 2, nullptr)));
626 627
627 // Setting the filter will damage the whole surface. 628 // Setting the filter will damage the whole surface.
628 gfx::Transform transform; 629 gfx::Transform transform;
629 transform.RotateAboutYAxis(60); 630 transform.RotateAboutYAxis(60);
630 ClearDamageForAllSurfaces(root); 631 ClearDamageForAllSurfaces(root);
631 child->test_properties()->force_render_surface = true; 632 child->test_properties()->force_render_surface = true;
632 child->test_properties()->transform = transform; 633 child->test_properties()->transform = transform;
633 root->layer_tree_impl()->property_trees()->needs_rebuild = true; 634 root->layer_tree_impl()->property_trees()->needs_rebuild = true;
634 EmulateDrawingOneFrame(root); 635 EmulateDrawingOneFrame(root);
635 child->OnFilterAnimated(filters); 636 child->layer_tree_impl()->property_trees()->effect_tree.OnFilterAnimated(
637 filters, child->effect_tree_index(), child->layer_tree_impl());
636 EmulateDrawingOneFrame(root); 638 EmulateDrawingOneFrame(root);
637 root_damage_rect = 639 root_damage_rect =
638 root->render_surface()->damage_tracker()->current_damage_rect(); 640 root->render_surface()->damage_tracker()->current_damage_rect();
639 child_damage_rect = 641 child_damage_rect =
640 child->render_surface()->damage_tracker()->current_damage_rect(); 642 child->render_surface()->damage_tracker()->current_damage_rect();
641 643
642 // Blur outset is 6px for a 2px blur. 644 // Blur outset is 6px for a 2px blur.
643 int blur_outset = 6; 645 int blur_outset = 6;
644 int rotated_outset_left = blur_outset / 2; 646 int rotated_outset_left = blur_outset / 2;
645 int expected_rotated_width = (30 + 2 * blur_outset) / 2; 647 int expected_rotated_width = (30 + 2 * blur_outset) / 2;
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
680 682
681 FilterOperations filters; 683 FilterOperations filters;
682 filters.Append(FilterOperation::CreateBlurFilter(3.f)); 684 filters.Append(FilterOperation::CreateBlurFilter(3.f));
683 685
684 // Setting the filter will damage the whole surface. 686 // Setting the filter will damage the whole surface.
685 ClearDamageForAllSurfaces(root); 687 ClearDamageForAllSurfaces(root);
686 child->test_properties()->force_render_surface = true; 688 child->test_properties()->force_render_surface = true;
687 root->layer_tree_impl()->property_trees()->needs_rebuild = true; 689 root->layer_tree_impl()->property_trees()->needs_rebuild = true;
688 int device_scale_factor = 2; 690 int device_scale_factor = 2;
689 EmulateDrawingOneFrame(root, device_scale_factor); 691 EmulateDrawingOneFrame(root, device_scale_factor);
690 child->OnFilterAnimated(filters); 692 child->layer_tree_impl()->property_trees()->effect_tree.OnFilterAnimated(
693 filters, child->effect_tree_index(), child->layer_tree_impl());
691 EmulateDrawingOneFrame(root, device_scale_factor); 694 EmulateDrawingOneFrame(root, device_scale_factor);
692 root_damage_rect = 695 root_damage_rect =
693 root->render_surface()->damage_tracker()->current_damage_rect(); 696 root->render_surface()->damage_tracker()->current_damage_rect();
694 child_damage_rect = 697 child_damage_rect =
695 child->render_surface()->damage_tracker()->current_damage_rect(); 698 child->render_surface()->damage_tracker()->current_damage_rect();
696 699
697 // Blur outset is 9px for a 3px blur, scaled up by DSF. 700 // Blur outset is 9px for a 3px blur, scaled up by DSF.
698 int blur_outset = 9 * device_scale_factor; 701 int blur_outset = 9 * device_scale_factor;
699 gfx::Rect original_rect(100, 100, 100, 100); 702 gfx::Rect original_rect(100, 100, 100, 100);
700 gfx::Rect expected_child_damage_rect(60, 60); 703 gfx::Rect expected_child_damage_rect(60, 60);
(...skipping 973 matching lines...) Expand 10 before | Expand all | Expand 10 after
1674 gfx::Rect root_damage_rect = 1677 gfx::Rect root_damage_rect =
1675 root->render_surface()->damage_tracker()->current_damage_rect(); 1678 root->render_surface()->damage_tracker()->current_damage_rect();
1676 gfx::Rect damage_we_care_about = gfx::Rect(i, i); 1679 gfx::Rect damage_we_care_about = gfx::Rect(i, i);
1677 EXPECT_LE(damage_we_care_about.right(), root_damage_rect.right()); 1680 EXPECT_LE(damage_we_care_about.right(), root_damage_rect.right());
1678 EXPECT_LE(damage_we_care_about.bottom(), root_damage_rect.bottom()); 1681 EXPECT_LE(damage_we_care_about.bottom(), root_damage_rect.bottom());
1679 } 1682 }
1680 } 1683 }
1681 1684
1682 } // namespace 1685 } // namespace
1683 } // namespace cc 1686 } // namespace cc
OLDNEW
« no previous file with comments | « cc/layers/layer_impl_unittest.cc ('k') | cc/trees/layer_tree_host_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698