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

Side by Side Diff: cc/layer_impl_unittest.cc

Issue 11175009: Implement SkImageFilter support in the compositor. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Add TODOs; comment out OVERRIDE. Created 8 years, 2 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 "config.h" 5 #include "config.h"
6 6
7 #include "CCLayerImpl.h" 7 #include "CCLayerImpl.h"
8 8
9 #include "CCSingleThreadProxy.h" 9 #include "CCSingleThreadProxy.h"
10 #include "testing/gmock/include/gmock/gmock.h" 10 #include "testing/gmock/include/gmock/gmock.h"
11 #include "testing/gtest/include/gtest/gtest.h" 11 #include "testing/gtest/include/gtest/gtest.h"
12 #include <public/WebFilterOperation.h> 12 #include <public/WebFilterOperation.h>
13 #include <public/WebFilterOperations.h> 13 #include <public/WebFilterOperations.h>
14 #include "SkBlurImageFilter.h"
14 15
15 using namespace cc; 16 using namespace cc;
16 using namespace WebKit; 17 using namespace WebKit;
17 18
18 namespace { 19 namespace {
19 20
20 #define EXECUTE_AND_VERIFY_SUBTREE_CHANGED(codeToTest) \ 21 #define EXECUTE_AND_VERIFY_SUBTREE_CHANGED(codeToTest) \
21 root->resetAllChangeTrackingForSubtree(); \ 22 root->resetAllChangeTrackingForSubtree(); \
22 codeToTest; \ 23 codeToTest; \
23 EXPECT_TRUE(root->layerPropertyChanged()); \ 24 EXPECT_TRUE(root->layerPropertyChanged()); \
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
75 float arbitraryNumber = 0.352f; 76 float arbitraryNumber = 0.352f;
76 IntSize arbitraryIntSize = IntSize(111, 222); 77 IntSize arbitraryIntSize = IntSize(111, 222);
77 IntPoint arbitraryIntPoint = IntPoint(333, 444); 78 IntPoint arbitraryIntPoint = IntPoint(333, 444);
78 IntRect arbitraryIntRect = IntRect(arbitraryIntPoint, arbitraryIntSize); 79 IntRect arbitraryIntRect = IntRect(arbitraryIntPoint, arbitraryIntSize);
79 FloatRect arbitraryFloatRect = FloatRect(arbitraryFloatPoint, FloatSize(1.23 4f, 5.678f)); 80 FloatRect arbitraryFloatRect = FloatRect(arbitraryFloatPoint, FloatSize(1.23 4f, 5.678f));
80 SkColor arbitraryColor = SkColorSetRGB(10, 20, 30); 81 SkColor arbitraryColor = SkColorSetRGB(10, 20, 30);
81 WebTransformationMatrix arbitraryTransform; 82 WebTransformationMatrix arbitraryTransform;
82 arbitraryTransform.scale3d(0.1, 0.2, 0.3); 83 arbitraryTransform.scale3d(0.1, 0.2, 0.3);
83 WebFilterOperations arbitraryFilters; 84 WebFilterOperations arbitraryFilters;
84 arbitraryFilters.append(WebFilterOperation::createOpacityFilter(0.5)); 85 arbitraryFilters.append(WebFilterOperation::createOpacityFilter(0.5));
86 SkAutoTUnref<SkImageFilter> arbitraryFilter(new SkBlurImageFilter(SK_Scalar1 , SK_Scalar1));
85 87
86 // These properties are internal, and should not be considered "change" when they are used. 88 // These properties are internal, and should not be considered "change" when they are used.
87 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setUseLCDText(true)); 89 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setUseLCDText(true));
88 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setDrawOpacity(arbitraryNumb er)); 90 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setDrawOpacity(arbitraryNumb er));
89 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setRenderTarget(0)); 91 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setRenderTarget(0));
90 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setDrawTransform(arbitraryTr ansform)); 92 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setDrawTransform(arbitraryTr ansform));
91 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setScreenSpaceTransform(arbi traryTransform)); 93 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setScreenSpaceTransform(arbi traryTransform));
92 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setDrawableContentRect(arbit raryIntRect)); 94 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setDrawableContentRect(arbit raryIntRect));
93 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setUpdateRect(arbitraryFloat Rect)); 95 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setUpdateRect(arbitraryFloat Rect));
94 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setVisibleContentRect(arbitr aryIntRect)); 96 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setVisibleContentRect(arbitr aryIntRect));
95 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setMaxScrollPosition(arbitra ryIntSize)); 97 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setMaxScrollPosition(arbitra ryIntSize));
96 98
97 // Changing these properties affects the entire subtree of layers. 99 // Changing these properties affects the entire subtree of layers.
98 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->setAnchorPoint(arbitraryFloatPoint) ); 100 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->setAnchorPoint(arbitraryFloatPoint) );
99 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->setAnchorPointZ(arbitraryNumber)); 101 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->setAnchorPointZ(arbitraryNumber));
100 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->setFilters(arbitraryFilters)); 102 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->setFilters(arbitraryFilters));
103 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->setFilter(arbitraryFilter));
101 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->setMaskLayer(CCLayerImpl::create(4) )); 104 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->setMaskLayer(CCLayerImpl::create(4) ));
102 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->setMasksToBounds(true)); 105 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->setMasksToBounds(true));
103 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->setContentsOpaque(true)); 106 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->setContentsOpaque(true));
104 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->setReplicaLayer(CCLayerImpl::create (5))); 107 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->setReplicaLayer(CCLayerImpl::create (5)));
105 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->setPosition(arbitraryFloatPoint)); 108 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->setPosition(arbitraryFloatPoint));
106 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->setPreserves3D(true)); 109 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->setPreserves3D(true));
107 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->setDoubleSided(false)); // construc tor initializes it to "true". 110 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->setDoubleSided(false)); // construc tor initializes it to "true".
108 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->scrollBy(arbitraryIntSize)); 111 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->scrollBy(arbitraryIntSize));
109 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->setScrollDelta(IntSize())); 112 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->setScrollDelta(IntSize()));
110 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->setScrollPosition(arbitraryIntPoint )); 113 EXECUTE_AND_VERIFY_SUBTREE_CHANGED(root->setScrollPosition(arbitraryIntPoint ));
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
151 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setContentsOpaque(true)); 154 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setContentsOpaque(true));
152 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setOpacity(arbitraryNumber)) ; 155 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setOpacity(arbitraryNumber)) ;
153 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setDebugBorderColor(arbitrar yColor)); 156 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setDebugBorderColor(arbitrar yColor));
154 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setDebugBorderWidth(arbitrar yNumber)); 157 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setDebugBorderWidth(arbitrar yNumber));
155 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setDrawsContent(true)); 158 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setDrawsContent(true));
156 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setSublayerTransform(arbitra ryTransform)); 159 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setSublayerTransform(arbitra ryTransform));
157 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setBounds(arbitraryIntSize)) ; 160 EXECUTE_AND_VERIFY_SUBTREE_DID_NOT_CHANGE(root->setBounds(arbitraryIntSize)) ;
158 } 161 }
159 162
160 } // namespace 163 } // namespace
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698