OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2003, 2009, 2012 Apple Inc. All rights reserved. | 2 * Copyright (C) 2003, 2009, 2012 Apple Inc. All rights reserved. |
3 * Copyright (C) 2013 Intel Corporation. All rights reserved. | 3 * Copyright (C) 2013 Intel Corporation. All rights reserved. |
4 * | 4 * |
5 * Portions are Copyright (C) 1998 Netscape Communications Corporation. | 5 * Portions are Copyright (C) 1998 Netscape Communications Corporation. |
6 * | 6 * |
7 * Other contributors: | 7 * Other contributors: |
8 * Robert O'Callahan <roc+@cs.cmu.edu> | 8 * Robert O'Callahan <roc+@cs.cmu.edu> |
9 * David Baron <dbaron@fas.harvard.edu> | 9 * David Baron <dbaron@fas.harvard.edu> |
10 * Christian Biesinger <cbiesinger@web.de> | 10 * Christian Biesinger <cbiesinger@web.de> |
(...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
184 | 184 |
185 void updateLayerPositionsAfterLayout(const RenderLayer* rootLayer, UpdateLay
erPositionsFlags); | 185 void updateLayerPositionsAfterLayout(const RenderLayer* rootLayer, UpdateLay
erPositionsFlags); |
186 | 186 |
187 void updateLayerPositionsAfterOverflowScroll(); | 187 void updateLayerPositionsAfterOverflowScroll(); |
188 void updateLayerPositionsAfterDocumentScroll(); | 188 void updateLayerPositionsAfterDocumentScroll(); |
189 | 189 |
190 bool isPaginated() const { return m_isPaginated; } | 190 bool isPaginated() const { return m_isPaginated; } |
191 RenderLayer* enclosingPaginationLayer() const { return m_enclosingPagination
Layer; } | 191 RenderLayer* enclosingPaginationLayer() const { return m_enclosingPagination
Layer; } |
192 | 192 |
193 void updateTransform(); | 193 void updateTransform(); |
194 void update3dRenderingContext(); | 194 RenderLayer* renderingContextRoot(); |
195 RenderLayer* renderingContextRoot() const { return m_3dRenderingContextRoot;
} | |
196 | 195 |
197 const LayoutSize& offsetForInFlowPosition() const { return m_offsetForInFlow
Position; } | 196 const LayoutSize& offsetForInFlowPosition() const { return m_offsetForInFlow
Position; } |
198 | 197 |
199 void addBlockSelectionGapsBounds(const LayoutRect&); | 198 void addBlockSelectionGapsBounds(const LayoutRect&); |
200 void clearBlockSelectionGapsBounds(); | 199 void clearBlockSelectionGapsBounds(); |
201 void repaintBlockSelectionGaps(); | 200 void repaintBlockSelectionGaps(); |
202 bool hasBlockSelectionGapBounds() const; | 201 bool hasBlockSelectionGapBounds() const; |
203 | 202 |
204 RenderLayerStackingNode* stackingNode() { return m_stackingNode.get(); } | 203 RenderLayerStackingNode* stackingNode() { return m_stackingNode.get(); } |
205 const RenderLayerStackingNode* stackingNode() const { return m_stackingNode.
get(); } | 204 const RenderLayerStackingNode* stackingNode() const { return m_stackingNode.
get(); } |
(...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
330 | 329 |
331 // Get the perspective transform, which is applied to transformed sublayers. | 330 // Get the perspective transform, which is applied to transformed sublayers. |
332 // Returns true if the layer has a -webkit-perspective. | 331 // Returns true if the layer has a -webkit-perspective. |
333 // Note that this transform has the perspective-origin baked in. | 332 // Note that this transform has the perspective-origin baked in. |
334 TransformationMatrix perspectiveTransform() const; | 333 TransformationMatrix perspectiveTransform() const; |
335 FloatPoint perspectiveOrigin() const; | 334 FloatPoint perspectiveOrigin() const; |
336 bool preserves3D() const { return renderer()->style()->transformStyle3D() ==
TransformStyle3DPreserve3D; } | 335 bool preserves3D() const { return renderer()->style()->transformStyle3D() ==
TransformStyle3DPreserve3D; } |
337 bool has3DTransform() const { return m_transform && !m_transform->isAffine()
; } | 336 bool has3DTransform() const { return m_transform && !m_transform->isAffine()
; } |
338 | 337 |
339 // FIXME: reflections should force transform-style to be flat in the style:
https://bugs.webkit.org/show_bug.cgi?id=106959 | 338 // FIXME: reflections should force transform-style to be flat in the style:
https://bugs.webkit.org/show_bug.cgi?id=106959 |
340 bool shouldFlattenTransform() const { return renderer()->hasReflection() ||
!renderer()->style() || renderer()->style()->transformStyle3D() != TransformStyl
e3DPreserve3D; } | 339 bool shouldPreserve3D() const { return !renderer()->hasReflection() && rende
rer()->style()->transformStyle3D() == TransformStyle3DPreserve3D; } |
341 | 340 |
342 void filterNeedsRepaint(); | 341 void filterNeedsRepaint(); |
343 bool hasFilter() const { return renderer()->hasFilter(); } | 342 bool hasFilter() const { return renderer()->hasFilter(); } |
344 | 343 |
345 bool paintsWithBlendMode() const; | 344 bool paintsWithBlendMode() const; |
346 | 345 |
347 void* operator new(size_t); | 346 void* operator new(size_t); |
348 // Only safe to call from RenderLayerModelObject::destroyLayer() | 347 // Only safe to call from RenderLayerModelObject::destroyLayer() |
349 void operator delete(void*); | 348 void operator delete(void*); |
350 | 349 |
(...skipping 386 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
737 LayoutUnit m_staticInlinePosition; | 736 LayoutUnit m_staticInlinePosition; |
738 LayoutUnit m_staticBlockPosition; | 737 LayoutUnit m_staticBlockPosition; |
739 | 738 |
740 IntRect m_absoluteBoundingBox; | 739 IntRect m_absoluteBoundingBox; |
741 | 740 |
742 OwnPtr<TransformationMatrix> m_transform; | 741 OwnPtr<TransformationMatrix> m_transform; |
743 | 742 |
744 // Pointer to the enclosing RenderLayer that caused us to be paginated. It i
s 0 if we are not paginated. | 743 // Pointer to the enclosing RenderLayer that caused us to be paginated. It i
s 0 if we are not paginated. |
745 RenderLayer* m_enclosingPaginationLayer; | 744 RenderLayer* m_enclosingPaginationLayer; |
746 | 745 |
747 // Pointer to the enclosing RenderLayer that establishes the 3d rendering co
ntext in which this layer participates. | |
748 // If it 0, it does not participate in a 3d rendering context. | |
749 RenderLayer* m_3dRenderingContextRoot; | |
750 | |
751 // Properties that are computed while updating compositing layers. These val
ues may be dirty/invalid if | 746 // Properties that are computed while updating compositing layers. These val
ues may be dirty/invalid if |
752 // compositing status is not up-to-date before using them. | 747 // compositing status is not up-to-date before using them. |
753 struct CompositingProperties { | 748 struct CompositingProperties { |
754 CompositingProperties() | 749 CompositingProperties() |
755 : hasCompositingDescendant(false) | 750 : hasCompositingDescendant(false) |
756 , hasNonCompositedChild(false) | 751 , hasNonCompositedChild(false) |
757 , shouldIsolateCompositedDescendants(false) | 752 , shouldIsolateCompositedDescendants(false) |
758 , lostGroupedMapping(false) | 753 , lostGroupedMapping(false) |
759 , viewportConstrainedNotCompositedReason(NoNotCompositedReason) | 754 , viewportConstrainedNotCompositedReason(NoNotCompositedReason) |
760 , compositingReasons(CompositingReasonNone) | 755 , compositingReasons(CompositingReasonNone) |
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
804 | 799 |
805 } // namespace WebCore | 800 } // namespace WebCore |
806 | 801 |
807 #ifndef NDEBUG | 802 #ifndef NDEBUG |
808 // Outside the WebCore namespace for ease of invocation from gdb. | 803 // Outside the WebCore namespace for ease of invocation from gdb. |
809 void showLayerTree(const WebCore::RenderLayer*); | 804 void showLayerTree(const WebCore::RenderLayer*); |
810 void showLayerTree(const WebCore::RenderObject*); | 805 void showLayerTree(const WebCore::RenderObject*); |
811 #endif | 806 #endif |
812 | 807 |
813 #endif // RenderLayer_h | 808 #endif // RenderLayer_h |
OLD | NEW |