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 139 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
150 | 150 |
151 DeprecatedPaintLayerCompositor* compositor() const; | 151 DeprecatedPaintLayerCompositor* compositor() const; |
152 | 152 |
153 // Notification from the layoutObject that its content changed (e.g. current
frame of image changed). | 153 // Notification from the layoutObject that its content changed (e.g. current
frame of image changed). |
154 // Allows updates of layer content without invalidating paint. | 154 // Allows updates of layer content without invalidating paint. |
155 void contentChanged(ContentChangeType); | 155 void contentChanged(ContentChangeType); |
156 | 156 |
157 void updateLayerPositionsAfterLayout(); | 157 void updateLayerPositionsAfterLayout(); |
158 void updateLayerPositionsAfterOverflowScroll(const DoubleSize& scrollDelta); | 158 void updateLayerPositionsAfterOverflowScroll(const DoubleSize& scrollDelta); |
159 | 159 |
160 bool isPaginated() const { return m_isPaginated; } | |
161 DeprecatedPaintLayer* enclosingPaginationLayer() const { return m_enclosingP
aginationLayer; } | 160 DeprecatedPaintLayer* enclosingPaginationLayer() const { return m_enclosingP
aginationLayer; } |
162 | 161 |
163 void updateTransformationMatrix(); | 162 void updateTransformationMatrix(); |
164 DeprecatedPaintLayer* renderingContextRoot(); | 163 DeprecatedPaintLayer* renderingContextRoot(); |
165 | 164 |
166 const LayoutSize& offsetForInFlowPosition() const { return m_offsetForInFlow
Position; } | 165 const LayoutSize& offsetForInFlowPosition() const { return m_offsetForInFlow
Position; } |
167 | 166 |
168 void blockSelectionGapsBoundsChanged(); | 167 void blockSelectionGapsBoundsChanged(); |
169 void addBlockSelectionGapsBounds(const LayoutRect&); | 168 void addBlockSelectionGapsBounds(const LayoutRect&); |
170 void clearBlockSelectionGapsBounds(); | 169 void clearBlockSelectionGapsBounds(); |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
210 // GraphicsLayer backing, but is nevertheless the root for a call to the Lay
er::paint*() methods. | 209 // GraphicsLayer backing, but is nevertheless the root for a call to the Lay
er::paint*() methods. |
211 DeprecatedPaintLayer* enclosingLayerForPaintInvalidation() const; | 210 DeprecatedPaintLayer* enclosingLayerForPaintInvalidation() const; |
212 | 211 |
213 DeprecatedPaintLayer* enclosingLayerForPaintInvalidationCrossingFrameBoundar
ies() const; | 212 DeprecatedPaintLayer* enclosingLayerForPaintInvalidationCrossingFrameBoundar
ies() const; |
214 | 213 |
215 bool hasAncestorWithFilterOutsets() const; | 214 bool hasAncestorWithFilterOutsets() const; |
216 | 215 |
217 bool canUseConvertToLayerCoords() const | 216 bool canUseConvertToLayerCoords() const |
218 { | 217 { |
219 // These LayoutObjects have an impact on their layers without the layout
Objects knowing about it. | 218 // These LayoutObjects have an impact on their layers without the layout
Objects knowing about it. |
220 return !layoutObject()->hasColumns() && !layoutObject()->hasTransformRel
atedProperty() && !layoutObject()->isSVGRoot(); | 219 return !layoutObject()->hasTransformRelatedProperty() && !layoutObject()
->isSVGRoot(); |
221 } | 220 } |
222 | 221 |
223 void convertToLayerCoords(const DeprecatedPaintLayer* ancestorLayer, LayoutP
oint&) const; | 222 void convertToLayerCoords(const DeprecatedPaintLayer* ancestorLayer, LayoutP
oint&) const; |
224 void convertToLayerCoords(const DeprecatedPaintLayer* ancestorLayer, LayoutR
ect&) const; | 223 void convertToLayerCoords(const DeprecatedPaintLayer* ancestorLayer, LayoutR
ect&) const; |
225 | 224 |
226 // Does the same as convertToLayerCoords() when not in multicol. For multico
l, however, | 225 // Does the same as convertToLayerCoords() when not in multicol. For multico
l, however, |
227 // convertToLayerCoords() calculates the offset in flow-thread coordinates (
what the layout | 226 // convertToLayerCoords() calculates the offset in flow-thread coordinates (
what the layout |
228 // engine uses internally), while this method calculates the visual coordina
tes; i.e. it figures | 227 // engine uses internally), while this method calculates the visual coordina
tes; i.e. it figures |
229 // out which column the layer starts in and adds in the offset. See | 228 // out which column the layer starts in and adds in the offset. See |
230 // http://www.chromium.org/developers/design-documents/multi-column-layout f
or more info. | 229 // http://www.chromium.org/developers/design-documents/multi-column-layout f
or more info. |
(...skipping 324 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
555 DeprecatedPaintLayer* hitTestLayer(DeprecatedPaintLayer* rootLayer, Deprecat
edPaintLayer* containerLayer, HitTestResult&, | 554 DeprecatedPaintLayer* hitTestLayer(DeprecatedPaintLayer* rootLayer, Deprecat
edPaintLayer* containerLayer, HitTestResult&, |
556 const LayoutRect& hitTestRect, const HitTestLocation&, bool appliedTrans
form, | 555 const LayoutRect& hitTestRect, const HitTestLocation&, bool appliedTrans
form, |
557 const HitTestingTransformState* = 0, double* zOffset = 0); | 556 const HitTestingTransformState* = 0, double* zOffset = 0); |
558 DeprecatedPaintLayer* hitTestLayerByApplyingTransform(DeprecatedPaintLayer*
rootLayer, DeprecatedPaintLayer* containerLayer, HitTestResult&, | 557 DeprecatedPaintLayer* hitTestLayerByApplyingTransform(DeprecatedPaintLayer*
rootLayer, DeprecatedPaintLayer* containerLayer, HitTestResult&, |
559 const LayoutRect& hitTestRect, const HitTestLocation&, const HitTestingT
ransformState* = 0, double* zOffset = 0, | 558 const LayoutRect& hitTestRect, const HitTestLocation&, const HitTestingT
ransformState* = 0, double* zOffset = 0, |
560 const LayoutPoint& translationOffset = LayoutPoint()); | 559 const LayoutPoint& translationOffset = LayoutPoint()); |
561 DeprecatedPaintLayer* hitTestChildren(ChildrenIteration, DeprecatedPaintLaye
r* rootLayer, HitTestResult&, | 560 DeprecatedPaintLayer* hitTestChildren(ChildrenIteration, DeprecatedPaintLaye
r* rootLayer, HitTestResult&, |
562 const LayoutRect& hitTestRect, const HitTestLocation&, | 561 const LayoutRect& hitTestRect, const HitTestLocation&, |
563 const HitTestingTransformState*, double* zOffsetForDescendants, double*
zOffset, | 562 const HitTestingTransformState*, double* zOffsetForDescendants, double*
zOffset, |
564 const HitTestingTransformState* unflattenedTransformState, bool depthSor
tDescendants); | 563 const HitTestingTransformState* unflattenedTransformState, bool depthSor
tDescendants); |
565 DeprecatedPaintLayer* hitTestPaginatedChildLayer(DeprecatedPaintLayer* child
Layer, DeprecatedPaintLayer* rootLayer, HitTestResult&, | |
566 const LayoutRect& hitTestRect, const HitTestLocation&, | |
567 const HitTestingTransformState*, double* zOffset); | |
568 DeprecatedPaintLayer* hitTestChildLayerColumns(DeprecatedPaintLayer* childLa
yer, DeprecatedPaintLayer* rootLayer, HitTestResult&, | |
569 const LayoutRect& hitTestRect, const HitTestLocation&, | |
570 const HitTestingTransformState*, double* zOffset, | |
571 const Vector<DeprecatedPaintLayer*>& columnLayers, size_t columnIndex); | |
572 | 564 |
573 PassRefPtr<HitTestingTransformState> createLocalTransformState(DeprecatedPai
ntLayer* rootLayer, DeprecatedPaintLayer* containerLayer, | 565 PassRefPtr<HitTestingTransformState> createLocalTransformState(DeprecatedPai
ntLayer* rootLayer, DeprecatedPaintLayer* containerLayer, |
574 const LayoutRect& hitTestRect, const HitTestLocation&, | 566 const LayoutRect& hitTestRect, const HitTestLocation&, |
575 const HitTestingTransformState* containerTransformState, | 567 const HitTestingTransformState* containerTransformState, |
576 const LayoutPoint& translationOffset = LayoutPoint()) const; | 568 const LayoutPoint& translationOffset = LayoutPoint()) const; |
577 | 569 |
578 bool hitTestContents(HitTestResult&, const LayoutRect& layerBounds, const Hi
tTestLocation&, HitTestFilter) const; | 570 bool hitTestContents(HitTestResult&, const LayoutRect& layerBounds, const Hi
tTestLocation&, HitTestFilter) const; |
579 bool hitTestContentsForFragments(const DeprecatedPaintLayerFragments&, HitTe
stResult&, const HitTestLocation&, HitTestFilter, bool& insideClipRect) const; | 571 bool hitTestContentsForFragments(const DeprecatedPaintLayerFragments&, HitTe
stResult&, const HitTestLocation&, HitTestFilter, bool& insideClipRect) const; |
580 DeprecatedPaintLayer* hitTestTransformedLayerInFragments(DeprecatedPaintLaye
r* rootLayer, DeprecatedPaintLayer* containerLayer, HitTestResult&, | 572 DeprecatedPaintLayer* hitTestTransformedLayerInFragments(DeprecatedPaintLaye
r* rootLayer, DeprecatedPaintLayer* containerLayer, HitTestResult&, |
581 const LayoutRect& hitTestRect, const HitTestLocation&, const HitTestingT
ransformState* = 0, double* zOffset = 0); | 573 const LayoutRect& hitTestRect, const HitTestLocation&, const HitTestingT
ransformState* = 0, double* zOffset = 0); |
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
624 | 616 |
625 const unsigned m_isRootLayer : 1; | 617 const unsigned m_isRootLayer : 1; |
626 | 618 |
627 unsigned m_visibleContentStatusDirty : 1; | 619 unsigned m_visibleContentStatusDirty : 1; |
628 unsigned m_hasVisibleContent : 1; | 620 unsigned m_hasVisibleContent : 1; |
629 unsigned m_visibleDescendantStatusDirty : 1; | 621 unsigned m_visibleDescendantStatusDirty : 1; |
630 unsigned m_hasVisibleDescendant : 1; | 622 unsigned m_hasVisibleDescendant : 1; |
631 | 623 |
632 unsigned m_hasVisibleNonLayerContent : 1; | 624 unsigned m_hasVisibleNonLayerContent : 1; |
633 | 625 |
634 unsigned m_isPaginated : 1; // If we think this layer is split by a multi-co
lumn ancestor, then this bit will be set. | |
635 | |
636 #if ENABLE(ASSERT) | 626 #if ENABLE(ASSERT) |
637 unsigned m_needsPositionUpdate : 1; | 627 unsigned m_needsPositionUpdate : 1; |
638 #endif | 628 #endif |
639 | 629 |
640 unsigned m_3DTransformedDescendantStatusDirty : 1; | 630 unsigned m_3DTransformedDescendantStatusDirty : 1; |
641 // Set on a stacking context layer that has 3D descendants anywhere | 631 // Set on a stacking context layer that has 3D descendants anywhere |
642 // in a preserves3D hierarchy. Hint to do 3D-aware hit testing. | 632 // in a preserves3D hierarchy. Hint to do 3D-aware hit testing. |
643 unsigned m_has3DTransformedDescendant : 1; | 633 unsigned m_has3DTransformedDescendant : 1; |
644 | 634 |
645 unsigned m_containsDirtyOverlayScrollbars : 1; | 635 unsigned m_containsDirtyOverlayScrollbars : 1; |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
722 | 712 |
723 } // namespace blink | 713 } // namespace blink |
724 | 714 |
725 #ifndef NDEBUG | 715 #ifndef NDEBUG |
726 // Outside the WebCore namespace for ease of invocation from gdb. | 716 // Outside the WebCore namespace for ease of invocation from gdb. |
727 void showLayerTree(const blink::DeprecatedPaintLayer*); | 717 void showLayerTree(const blink::DeprecatedPaintLayer*); |
728 void showLayerTree(const blink::LayoutObject*); | 718 void showLayerTree(const blink::LayoutObject*); |
729 #endif | 719 #endif |
730 | 720 |
731 #endif // Layer_h | 721 #endif // Layer_h |
OLD | NEW |