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 460 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
471 PassOwnPtr<Vector<FloatRect> > collectTrackedRepaintRects() const; | 471 PassOwnPtr<Vector<FloatRect> > collectTrackedRepaintRects() const; |
472 | 472 |
473 RenderLayerBlendInfo& blendInfo() { return m_blendInfo; } | 473 RenderLayerBlendInfo& blendInfo() { return m_blendInfo; } |
474 | 474 |
475 void setOffsetFromSquashingLayerOrigin(IntSize offset) { m_compositingProper
ties.offsetFromSquashingLayerOrigin = offset; } | 475 void setOffsetFromSquashingLayerOrigin(IntSize offset) { m_compositingProper
ties.offsetFromSquashingLayerOrigin = offset; } |
476 IntSize offsetFromSquashingLayerOrigin() const { return m_compositingPropert
ies.offsetFromSquashingLayerOrigin; } | 476 IntSize offsetFromSquashingLayerOrigin() const { return m_compositingPropert
ies.offsetFromSquashingLayerOrigin; } |
477 | 477 |
478 bool scrollsOverflow() const; | 478 bool scrollsOverflow() const; |
479 | 479 |
480 bool hasDirectReasonsForCompositing() const { return compositingReasons() &
CompositingReasonComboAllDirectReasons; } | 480 bool hasDirectReasonsForCompositing() const { return compositingReasons() &
CompositingReasonComboAllDirectReasons; } |
| 481 CompositingReasons styleDeterminedCompositingReasons() const { return compos
itingReasons() & CompositingReasonComboAllStyleDeterminedReasons; } |
481 | 482 |
482 private: | 483 private: |
483 bool hasOverflowControls() const; | 484 bool hasOverflowControls() const; |
484 | 485 |
485 void setIsUnclippedDescendant(bool isUnclippedDescendant) { m_isUnclippedDes
cendant = isUnclippedDescendant; } | 486 void setIsUnclippedDescendant(bool isUnclippedDescendant) { m_isUnclippedDes
cendant = isUnclippedDescendant; } |
486 | 487 |
487 void setAncestorChainHasSelfPaintingLayerDescendant(); | 488 void setAncestorChainHasSelfPaintingLayerDescendant(); |
488 void dirtyAncestorChainHasSelfPaintingLayerDescendantStatus(); | 489 void dirtyAncestorChainHasSelfPaintingLayerDescendantStatus(); |
489 | 490 |
490 void setAncestorChainHasOutOfFlowPositionedDescendant(); | 491 void setAncestorChainHasOutOfFlowPositionedDescendant(); |
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
571 | 572 |
572 bool hitTestContents(const HitTestRequest&, HitTestResult&, const LayoutRect
& layerBounds, const HitTestLocation&, HitTestFilter) const; | 573 bool hitTestContents(const HitTestRequest&, HitTestResult&, const LayoutRect
& layerBounds, const HitTestLocation&, HitTestFilter) const; |
573 bool hitTestContentsForFragments(const LayerFragments&, const HitTestRequest
&, HitTestResult&, const HitTestLocation&, HitTestFilter, bool& insideClipRect)
const; | 574 bool hitTestContentsForFragments(const LayerFragments&, const HitTestRequest
&, HitTestResult&, const HitTestLocation&, HitTestFilter, bool& insideClipRect)
const; |
574 RenderLayer* hitTestTransformedLayerInFragments(RenderLayer* rootLayer, Rend
erLayer* containerLayer, const HitTestRequest&, HitTestResult&, | 575 RenderLayer* hitTestTransformedLayerInFragments(RenderLayer* rootLayer, Rend
erLayer* containerLayer, const HitTestRequest&, HitTestResult&, |
575 const LayoutRect& hitTestRect, const HitTestLocation&, const HitTestingT
ransformState* = 0, double* zOffset = 0); | 576 const LayoutRect& hitTestRect, const HitTestLocation&, const HitTestingT
ransformState* = 0, double* zOffset = 0); |
576 | 577 |
577 bool childBackgroundIsKnownToBeOpaqueInRect(const LayoutRect&) const; | 578 bool childBackgroundIsKnownToBeOpaqueInRect(const LayoutRect&) const; |
578 | 579 |
579 bool shouldBeSelfPaintingLayer() const; | 580 bool shouldBeSelfPaintingLayer() const; |
580 | 581 |
| 582 |
581 private: | 583 private: |
582 // FIXME: We should only create the stacking node if needed. | 584 // FIXME: We should only create the stacking node if needed. |
583 bool requiresStackingNode() const { return true; } | 585 bool requiresStackingNode() const { return true; } |
584 void updateStackingNode(); | 586 void updateStackingNode(); |
585 | 587 |
586 void updateReflectionInfo(const RenderStyle*); | 588 void updateReflectionInfo(const RenderStyle*); |
587 | 589 |
588 // FIXME: We could lazily allocate our ScrollableArea based on style propert
ies ('overflow', ...) | 590 // FIXME: We could lazily allocate our ScrollableArea based on style propert
ies ('overflow', ...) |
589 // but for now, we are always allocating it for RenderBox as it's safer. | 591 // but for now, we are always allocating it for RenderBox as it's safer. |
590 bool requiresScrollableArea() const { return renderBox(); } | 592 bool requiresScrollableArea() const { return renderBox(); } |
(...skipping 25 matching lines...) Expand all Loading... |
616 | 618 |
617 bool hasNonCompositedChild() const { return m_compositingProperties.hasNonCo
mpositedChild; } | 619 bool hasNonCompositedChild() const { return m_compositingProperties.hasNonCo
mpositedChild; } |
618 void setHasNonCompositedChild(bool b) { m_compositingProperties.hasNonCompo
sitedChild = b; } | 620 void setHasNonCompositedChild(bool b) { m_compositingProperties.hasNonCompo
sitedChild = b; } |
619 | 621 |
620 bool shouldIsolateCompositedDescendants() const { return m_compositingProper
ties.shouldIsolateCompositedDescendants; } | 622 bool shouldIsolateCompositedDescendants() const { return m_compositingProper
ties.shouldIsolateCompositedDescendants; } |
621 void setShouldIsolateCompositedDescendants(bool b) { m_compositingPropertie
s.shouldIsolateCompositedDescendants = b; } | 623 void setShouldIsolateCompositedDescendants(bool b) { m_compositingPropertie
s.shouldIsolateCompositedDescendants = b; } |
622 | 624 |
623 bool lostGroupedMapping() const { return m_compositingProperties.lostGrouped
Mapping; } | 625 bool lostGroupedMapping() const { return m_compositingProperties.lostGrouped
Mapping; } |
624 void setLostGroupedMapping(bool b) { m_compositingProperties.lostGroupedMapp
ing = b; } | 626 void setLostGroupedMapping(bool b) { m_compositingProperties.lostGroupedMapp
ing = b; } |
625 | 627 |
626 void setCompositingReasons(CompositingReasons); | |
627 CompositingReasons compositingReasons() const { return m_compositingProperti
es.compositingReasons; } | 628 CompositingReasons compositingReasons() const { return m_compositingProperti
es.compositingReasons; } |
| 629 void setCompositingReasons(CompositingReasons, CompositingReasons mask = Com
positingReasonAll); |
628 | 630 |
629 friend class CompositedLayerMapping; | 631 friend class CompositedLayerMapping; |
630 friend class RenderLayerCompositor; | 632 friend class RenderLayerCompositor; |
631 friend class RenderLayerModelObject; | 633 friend class RenderLayerModelObject; |
632 | 634 |
633 private: | 635 private: |
634 LayerType m_layerType; | 636 LayerType m_layerType; |
635 | 637 |
636 // Self-painting layer is an optimization where we avoid the heavy RenderLay
er painting | 638 // Self-painting layer is an optimization where we avoid the heavy RenderLay
er painting |
637 // machinery for a RenderLayer allocated only to handle the overflow clip ca
se. | 639 // machinery for a RenderLayer allocated only to handle the overflow clip ca
se. |
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
767 | 769 |
768 } // namespace WebCore | 770 } // namespace WebCore |
769 | 771 |
770 #ifndef NDEBUG | 772 #ifndef NDEBUG |
771 // Outside the WebCore namespace for ease of invocation from gdb. | 773 // Outside the WebCore namespace for ease of invocation from gdb. |
772 void showLayerTree(const WebCore::RenderLayer*); | 774 void showLayerTree(const WebCore::RenderLayer*); |
773 void showLayerTree(const WebCore::RenderObject*); | 775 void showLayerTree(const WebCore::RenderObject*); |
774 #endif | 776 #endif |
775 | 777 |
776 #endif // RenderLayer_h | 778 #endif // RenderLayer_h |
OLD | NEW |