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

Side by Side Diff: third_party/WebKit/Source/core/layout/compositing/CompositingReasonFinderTest.cpp

Issue 2593833002: Constrain transform animation direct compositing reason to transforms. (Closed)
Patch Set: Shift tests. Created 3 years, 12 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
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 "core/layout/compositing/CompositingReasonFinder.h" 5 #include "core/layout/compositing/CompositingReasonFinder.h"
6 6
7 #include "core/frame/FrameView.h" 7 #include "core/frame/FrameView.h"
8 #include "core/layout/LayoutBlock.h" 8 #include "core/layout/LayoutBlock.h"
9 #include "core/layout/LayoutTestHelper.h" 9 #include "core/layout/LayoutTestHelper.h"
10 #include "core/paint/PaintLayer.h" 10 #include "core/paint/PaintLayer.h"
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after
152 EXPECT_EQ(PaintsIntoOwnBacking, paintLayer->compositingState()); 152 EXPECT_EQ(PaintsIntoOwnBacking, paintLayer->compositingState());
153 EXPECT_TRUE(paintLayer->graphicsLayerBacking()->contentsOpaque()); 153 EXPECT_TRUE(paintLayer->graphicsLayerBacking()->contentsOpaque());
154 154
155 // Make the fixed translucent. 155 // Make the fixed translucent.
156 fixed->setAttribute(HTMLNames::styleAttr, "opacity: 0.5"); 156 fixed->setAttribute(HTMLNames::styleAttr, "opacity: 0.5");
157 document().view()->updateAllLifecyclePhases(); 157 document().view()->updateAllLifecyclePhases();
158 paintLayer = toLayoutBoxModelObject(fixed->layoutObject())->layer(); 158 paintLayer = toLayoutBoxModelObject(fixed->layoutObject())->layer();
159 ASSERT_TRUE(paintLayer); 159 ASSERT_TRUE(paintLayer);
160 EXPECT_EQ(NotComposited, paintLayer->compositingState()); 160 EXPECT_EQ(NotComposited, paintLayer->compositingState());
161 } 161 }
162
163 TEST_F(CompositingReasonFinderTest, RequiresCompositingForTransformAnimation) {
164 RefPtr<ComputedStyle> style = ComputedStyle::create();
165 style->setSubtreeWillChangeContents(false);
166
167 style->setHasCurrentTransformAnimation(false);
168 style->setIsRunningTransformAnimationOnCompositor(false);
169 EXPECT_FALSE(
170 CompositingReasonFinder::requiresCompositingForTransformAnimation(
171 *style));
172
173 style->setHasCurrentTransformAnimation(false);
174 style->setIsRunningTransformAnimationOnCompositor(true);
175 EXPECT_FALSE(
176 CompositingReasonFinder::requiresCompositingForTransformAnimation(
177 *style));
178
179 style->setHasCurrentTransformAnimation(true);
180 style->setIsRunningTransformAnimationOnCompositor(false);
181 EXPECT_TRUE(CompositingReasonFinder::requiresCompositingForTransformAnimation(
182 *style));
183
184 style->setHasCurrentTransformAnimation(true);
185 style->setIsRunningTransformAnimationOnCompositor(true);
186 EXPECT_TRUE(CompositingReasonFinder::requiresCompositingForTransformAnimation(
187 *style));
188
189 style->setSubtreeWillChangeContents(true);
190
191 style->setHasCurrentTransformAnimation(false);
192 style->setIsRunningTransformAnimationOnCompositor(false);
193 EXPECT_FALSE(
194 CompositingReasonFinder::requiresCompositingForTransformAnimation(
195 *style));
196
197 style->setHasCurrentTransformAnimation(false);
198 style->setIsRunningTransformAnimationOnCompositor(true);
199 EXPECT_TRUE(CompositingReasonFinder::requiresCompositingForTransformAnimation(
200 *style));
201
202 style->setHasCurrentTransformAnimation(true);
203 style->setIsRunningTransformAnimationOnCompositor(false);
204 EXPECT_FALSE(
205 CompositingReasonFinder::requiresCompositingForTransformAnimation(
206 *style));
207
208 style->setHasCurrentTransformAnimation(true);
209 style->setIsRunningTransformAnimationOnCompositor(true);
210 EXPECT_TRUE(CompositingReasonFinder::requiresCompositingForTransformAnimation(
211 *style));
162 } 212 }
213
214 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698