Index: third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp |
diff --git a/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp b/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp |
index 6baebf02bfb5a7794626ffa4a5af5af5d5137593..1521b9de637b5ac19d944f3acd194213801ca099 100644 |
--- a/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp |
+++ b/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp |
@@ -307,25 +307,23 @@ void PaintPropertyTreeBuilder::updateTransformForNonRootSVG( |
static CompositingReasons compositingReasonsForTransform( |
const LayoutObject& object) { |
+ const ComputedStyle& style = object.styleRef(); |
CompositingReasons compositingReasons = CompositingReasonNone; |
if (CompositingReasonFinder::requiresCompositingForTransform(object)) |
compositingReasons |= CompositingReason3DTransform; |
- if (CompositingReasonFinder::requiresCompositingForTransformAnimation( |
- object.styleRef())) |
+ if (CompositingReasonFinder::requiresCompositingForTransformAnimation(style)) |
compositingReasons |= CompositingReasonActiveAnimation; |
- if (object.styleRef().hasWillChangeCompositingHint() && |
- !object.styleRef().subtreeWillChangeContents()) |
+ if (style.hasWillChangeCompositingHint() && |
+ !style.subtreeWillChangeContents()) |
compositingReasons |= CompositingReasonWillChangeCompositingHint; |
- if (object.isBoxModelObject()) { |
+ if (object.isBoxModelObject() && |
Xianzhu
2016/12/28 18:08:11
Not related to the change, but just a question: we
|
+ (style.hasPerspective() || |
+ style.usedTransformStyle3D() == TransformStyle3DPreserve3D)) { |
const LayoutBoxModelObject* box = toLayoutBoxModelObject(&object); |
if (box->hasLayer()) { |
- // TODO(chrishtr): move this to the descendant-dependent flags recursion |
- // PaintLayer::updateDescendantDependentFlags. |
- box->layer()->update3DTransformedDescendantStatus(); |
- |
if (box->layer()->has3DTransformedDescendant()) |
compositingReasons |= CompositingReason3DTransform; |
} |