| 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 346 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 357 // Bounding box relative to some ancestor layer. Pass offsetFromRoot if know
n. | 357 // Bounding box relative to some ancestor layer. Pass offsetFromRoot if know
n. |
| 358 LayoutRect physicalBoundingBox(const LayoutPoint& offsetFromRoot) const; | 358 LayoutRect physicalBoundingBox(const LayoutPoint& offsetFromRoot) const; |
| 359 LayoutRect physicalBoundingBox(const PaintLayer* ancestorLayer) const; | 359 LayoutRect physicalBoundingBox(const PaintLayer* ancestorLayer) const; |
| 360 LayoutRect physicalBoundingBoxIncludingReflectionAndStackingChildren(const L
ayoutPoint& offsetFromRoot) const; | 360 LayoutRect physicalBoundingBoxIncludingReflectionAndStackingChildren(const L
ayoutPoint& offsetFromRoot) const; |
| 361 LayoutRect fragmentsBoundingBox(const PaintLayer* ancestorLayer) const; | 361 LayoutRect fragmentsBoundingBox(const PaintLayer* ancestorLayer) const; |
| 362 | 362 |
| 363 LayoutRect boundingBoxForCompositingOverlapTest() const; | 363 LayoutRect boundingBoxForCompositingOverlapTest() const; |
| 364 | 364 |
| 365 // If true, this layer's children are included in its bounds for overlap tes
ting. | 365 // If true, this layer's children are included in its bounds for overlap tes
ting. |
| 366 // We can't rely on the children's positions if this layer has a filter that
could have moved the children's pixels around. | 366 // We can't rely on the children's positions if this layer has a filter that
could have moved the children's pixels around. |
| 367 bool overlapBoundsIncludeChildren() const { return hasFilter() && layoutObje
ct()->style()->filter().hasFilterThatMovesPixels(); } | 367 bool overlapBoundsIncludeChildren() const; |
| 368 | 368 |
| 369 // MaybeIncludeTransformForAncestorLayer means that a transform on |ancestor
Layer| may be applied to the bounding box, | 369 // MaybeIncludeTransformForAncestorLayer means that a transform on |ancestor
Layer| may be applied to the bounding box, |
| 370 // in particular if paintsWithTransform() is true. | 370 // in particular if paintsWithTransform() is true. |
| 371 enum CalculateBoundsOptions { | 371 enum CalculateBoundsOptions { |
| 372 MaybeIncludeTransformForAncestorLayer, | 372 MaybeIncludeTransformForAncestorLayer, |
| 373 NeverIncludeTransformForAncestorLayer, | 373 NeverIncludeTransformForAncestorLayer, |
| 374 }; | 374 }; |
| 375 LayoutRect boundingBoxForCompositing(const PaintLayer* ancestorLayer = 0, Ca
lculateBoundsOptions = MaybeIncludeTransformForAncestorLayer) const; | 375 LayoutRect boundingBoxForCompositing(const PaintLayer* ancestorLayer = 0, Ca
lculateBoundsOptions = MaybeIncludeTransformForAncestorLayer) const; |
| 376 | 376 |
| 377 LayoutUnit staticInlinePosition() const { return m_staticInlinePosition; } | 377 LayoutUnit staticInlinePosition() const { return m_staticInlinePosition; } |
| (...skipping 20 matching lines...) Expand all Loading... |
| 398 // Note that this transform does not have the perspective-origin baked in. | 398 // Note that this transform does not have the perspective-origin baked in. |
| 399 TransformationMatrix perspectiveTransform() const; | 399 TransformationMatrix perspectiveTransform() const; |
| 400 FloatPoint perspectiveOrigin() const; | 400 FloatPoint perspectiveOrigin() const; |
| 401 bool preserves3D() const { return layoutObject()->style()->transformStyle3D(
) == TransformStyle3DPreserve3D; } | 401 bool preserves3D() const { return layoutObject()->style()->transformStyle3D(
) == TransformStyle3DPreserve3D; } |
| 402 bool has3DTransform() const { return m_rareData && m_rareData->transform &&
!m_rareData->transform->isAffine(); } | 402 bool has3DTransform() const { return m_rareData && m_rareData->transform &&
!m_rareData->transform->isAffine(); } |
| 403 | 403 |
| 404 // FIXME: reflections should force transform-style to be flat in the style:
https://bugs.webkit.org/show_bug.cgi?id=106959 | 404 // FIXME: reflections should force transform-style to be flat in the style:
https://bugs.webkit.org/show_bug.cgi?id=106959 |
| 405 bool shouldPreserve3D() const { return !layoutObject()->hasReflection() && l
ayoutObject()->style()->transformStyle3D() == TransformStyle3DPreserve3D; } | 405 bool shouldPreserve3D() const { return !layoutObject()->hasReflection() && l
ayoutObject()->style()->transformStyle3D() == TransformStyle3DPreserve3D; } |
| 406 | 406 |
| 407 void filterNeedsPaintInvalidation(); | 407 void filterNeedsPaintInvalidation(); |
| 408 bool hasFilter() const { return layoutObject()->hasFilter(); } | 408 |
| 409 // Returns |true| if any property that renders using filter operations is |
| 410 // used (including, but not limited to, 'filter'). |
| 411 bool hasFilterInducingProperty() const { return layoutObject()->hasFilterInd
ucingProperty(); } |
| 409 | 412 |
| 410 void* operator new(size_t); | 413 void* operator new(size_t); |
| 411 // Only safe to call from LayoutBoxModelObject::destroyLayer() | 414 // Only safe to call from LayoutBoxModelObject::destroyLayer() |
| 412 void operator delete(void*); | 415 void operator delete(void*); |
| 413 | 416 |
| 414 CompositingState compositingState() const; | 417 CompositingState compositingState() const; |
| 415 | 418 |
| 416 // This returns true if our document is in a phase of its lifestyle during w
hich | 419 // This returns true if our document is in a phase of its lifestyle during w
hich |
| 417 // compositing state may legally be read. | 420 // compositing state may legally be read. |
| 418 bool isAllowedToQueryCompositingState() const; | 421 bool isAllowedToQueryCompositingState() const; |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 459 bool backgroundIsKnownToBeOpaqueInRect(const LayoutRect&) const; | 462 bool backgroundIsKnownToBeOpaqueInRect(const LayoutRect&) const; |
| 460 | 463 |
| 461 bool containsDirtyOverlayScrollbars() const { return m_containsDirtyOverlayS
crollbars; } | 464 bool containsDirtyOverlayScrollbars() const { return m_containsDirtyOverlayS
crollbars; } |
| 462 void setContainsDirtyOverlayScrollbars(bool dirtyScrollbars) { m_containsDir
tyOverlayScrollbars = dirtyScrollbars; } | 465 void setContainsDirtyOverlayScrollbars(bool dirtyScrollbars) { m_containsDir
tyOverlayScrollbars = dirtyScrollbars; } |
| 463 | 466 |
| 464 FilterOperations computeFilterOperations(const ComputedStyle&) const; | 467 FilterOperations computeFilterOperations(const ComputedStyle&) const; |
| 465 FilterOperations computeBackdropFilterOperations(const ComputedStyle&) const
; | 468 FilterOperations computeBackdropFilterOperations(const ComputedStyle&) const
; |
| 466 bool paintsWithFilters() const; | 469 bool paintsWithFilters() const; |
| 467 bool paintsWithBackdropFilters() const; | 470 bool paintsWithBackdropFilters() const; |
| 468 FilterEffect* lastFilterEffect() const; | 471 FilterEffect* lastFilterEffect() const; |
| 472 bool hasFilterOutsets() const; |
| 469 FilterOutsets filterOutsets() const; | 473 FilterOutsets filterOutsets() const; |
| 470 | 474 |
| 471 PaintLayerFilterInfo* filterInfo() const { return m_rareData ? m_rareData->f
ilterInfo.get() : nullptr; } | 475 PaintLayerFilterInfo* filterInfo() const { return m_rareData ? m_rareData->f
ilterInfo.get() : nullptr; } |
| 472 PaintLayerFilterInfo& ensureFilterInfo(); | 476 PaintLayerFilterInfo& ensureFilterInfo(); |
| 473 | 477 |
| 474 void updateFilters(const ComputedStyle* oldStyle, const ComputedStyle& newSt
yle); | 478 void updateFilters(const ComputedStyle* oldStyle, const ComputedStyle& newSt
yle); |
| 475 | 479 |
| 476 Node* enclosingNode() const; | 480 Node* enclosingNode() const; |
| 477 | 481 |
| 478 bool isInTopLayer() const; | 482 bool isInTopLayer() const; |
| (...skipping 380 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 859 | 863 |
| 860 } // namespace blink | 864 } // namespace blink |
| 861 | 865 |
| 862 #ifndef NDEBUG | 866 #ifndef NDEBUG |
| 863 // Outside the WebCore namespace for ease of invocation from gdb. | 867 // Outside the WebCore namespace for ease of invocation from gdb. |
| 864 void showLayerTree(const blink::PaintLayer*); | 868 void showLayerTree(const blink::PaintLayer*); |
| 865 void showLayerTree(const blink::LayoutObject*); | 869 void showLayerTree(const blink::LayoutObject*); |
| 866 #endif | 870 #endif |
| 867 | 871 |
| 868 #endif // Layer_h | 872 #endif // Layer_h |
| OLD | NEW |