OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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/paint/PaintPropertyTreeBuilder.h" | 5 #include "core/paint/PaintPropertyTreeBuilder.h" |
6 | 6 |
7 #include <memory> | 7 #include <memory> |
8 #include "core/dom/DOMNodeIds.h" | 8 #include "core/dom/DOMNodeIds.h" |
9 #include "core/frame/FrameView.h" | 9 #include "core/frame/FrameView.h" |
10 #include "core/frame/LocalFrame.h" | 10 #include "core/frame/LocalFrame.h" |
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
68 std::move(localTransformSpace), clipRect); | 68 std::move(localTransformSpace), clipRect); |
69 return false; | 69 return false; |
70 } | 70 } |
71 frameView.setContentClip(ClipPaintPropertyNode::create( | 71 frameView.setContentClip(ClipPaintPropertyNode::create( |
72 std::move(parent), std::move(localTransformSpace), clipRect)); | 72 std::move(parent), std::move(localTransformSpace), clipRect)); |
73 return true; | 73 return true; |
74 } | 74 } |
75 | 75 |
76 static CompositorElementId createDomNodeBasedCompositorElementId( | 76 static CompositorElementId createDomNodeBasedCompositorElementId( |
77 const LayoutObject& object) { | 77 const LayoutObject& object) { |
| 78 // TODO(wkorman): Centralize this implementation with similar across |
| 79 // animation, scrolling and compositing logic. |
78 return createCompositorElementId(DOMNodeIds::idForNode(object.node()), | 80 return createCompositorElementId(DOMNodeIds::idForNode(object.node()), |
79 CompositorSubElementId::Primary); | 81 CompositorSubElementId::Primary); |
80 } | 82 } |
81 | 83 |
82 // True if a new property was created or a main thread scrolling reason changed | 84 // True if a new property was created or a main thread scrolling reason changed |
83 // (which can affect descendants), false if an existing one was updated. | 85 // (which can affect descendants), false if an existing one was updated. |
84 static bool updateScrollTranslation( | 86 static bool updateScrollTranslation( |
85 FrameView& frameView, | 87 FrameView& frameView, |
86 PassRefPtr<const TransformPaintPropertyNode> parent, | 88 PassRefPtr<const TransformPaintPropertyNode> parent, |
87 const TransformationMatrix& matrix, | 89 const TransformationMatrix& matrix, |
(...skipping 1048 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1136 updateOverflowClip(object, context); | 1138 updateOverflowClip(object, context); |
1137 updatePerspective(object, context); | 1139 updatePerspective(object, context); |
1138 updateSvgLocalToBorderBoxTransform(object, context); | 1140 updateSvgLocalToBorderBoxTransform(object, context); |
1139 updateScrollAndScrollTranslation(object, context); | 1141 updateScrollAndScrollTranslation(object, context); |
1140 updateOutOfFlowContext(object, context); | 1142 updateOutOfFlowContext(object, context); |
1141 | 1143 |
1142 context.forceSubtreeUpdate |= object.subtreeNeedsPaintPropertyUpdate(); | 1144 context.forceSubtreeUpdate |= object.subtreeNeedsPaintPropertyUpdate(); |
1143 } | 1145 } |
1144 | 1146 |
1145 } // namespace blink | 1147 } // namespace blink |
OLD | NEW |