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 * | 3 * |
4 * Portions are Copyright (C) 1998 Netscape Communications Corporation. | 4 * Portions are Copyright (C) 1998 Netscape Communications Corporation. |
5 * | 5 * |
6 * Other contributors: | 6 * Other contributors: |
7 * Robert O'Callahan <roc+@cs.cmu.edu> | 7 * Robert O'Callahan <roc+@cs.cmu.edu> |
8 * David Baron <dbaron@fas.harvard.edu> | 8 * David Baron <dbaron@fas.harvard.edu> |
9 * Christian Biesinger <cbiesinger@web.de> | 9 * Christian Biesinger <cbiesinger@web.de> |
10 * Randall Jesup <rjesup@wgate.com> | 10 * Randall Jesup <rjesup@wgate.com> |
(...skipping 586 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
597 // paints the layers that intersect the damage rect from back to | 597 // paints the layers that intersect the damage rect from back to |
598 // front. The hitTest method looks for mouse events by walking | 598 // front. The hitTest method looks for mouse events by walking |
599 // layers that intersect the point from front to back. | 599 // layers that intersect the point from front to back. |
600 void paint(GraphicsContext*, const LayoutRect& damageRect, PaintBehavior = P
aintBehaviorNormal, RenderObject* paintingRoot = 0, | 600 void paint(GraphicsContext*, const LayoutRect& damageRect, PaintBehavior = P
aintBehaviorNormal, RenderObject* paintingRoot = 0, |
601 RenderRegion* = 0, PaintLayerFlags = 0); | 601 RenderRegion* = 0, PaintLayerFlags = 0); |
602 bool hitTest(const HitTestRequest&, HitTestResult&); | 602 bool hitTest(const HitTestRequest&, HitTestResult&); |
603 bool hitTest(const HitTestRequest&, const HitTestLocation&, HitTestResult&); | 603 bool hitTest(const HitTestRequest&, const HitTestLocation&, HitTestResult&); |
604 void paintOverlayScrollbars(GraphicsContext*, const LayoutRect& damageRect,
PaintBehavior, RenderObject* paintingRoot = 0); | 604 void paintOverlayScrollbars(GraphicsContext*, const LayoutRect& damageRect,
PaintBehavior, RenderObject* paintingRoot = 0); |
605 | 605 |
606 struct ClipRectsContext { | 606 struct ClipRectsContext { |
607 ClipRectsContext(const RenderLayer* inRootLayer, RenderRegion* inRegion,
ClipRectsType inClipRectsType, OverlayScrollbarSizeRelevancy inOverlayScrollbar
SizeRelevancy = IgnoreOverlayScrollbarSize, ShouldRespectOverflowClip inRespectO
verflowClip = RespectOverflowClip) | 607 ClipRectsContext(const RenderLayer* inRootLayer, RenderRegion* inRegion,
ClipRectsType inClipRectsType, OverlayScrollbarSizeRelevancy inOverlayScrollbar
SizeRelevancy = IgnoreOverlayScrollbarSize, ShouldRespectOverflowClip inRespectO
verflowClip = RespectOverflowClip, const RenderLayer* scrollParent = 0) |
608 : rootLayer(inRootLayer) | 608 : rootLayer(inRootLayer) |
609 , region(inRegion) | 609 , region(inRegion) |
610 , clipRectsType(inClipRectsType) | 610 , clipRectsType(inClipRectsType) |
611 , overlayScrollbarSizeRelevancy(inOverlayScrollbarSizeRelevancy) | 611 , overlayScrollbarSizeRelevancy(inOverlayScrollbarSizeRelevancy) |
612 , respectOverflowClip(inRespectOverflowClip) | 612 , respectOverflowClip(inRespectOverflowClip) |
613 { } | 613 { } |
614 const RenderLayer* rootLayer; | 614 const RenderLayer* rootLayer; |
615 RenderRegion* region; | 615 RenderRegion* region; |
616 ClipRectsType clipRectsType; | 616 ClipRectsType clipRectsType; |
617 OverlayScrollbarSizeRelevancy overlayScrollbarSizeRelevancy; | 617 OverlayScrollbarSizeRelevancy overlayScrollbarSizeRelevancy; |
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
715 void operator delete(void*); | 715 void operator delete(void*); |
716 | 716 |
717 bool isComposited() const { return m_backing != 0; } | 717 bool isComposited() const { return m_backing != 0; } |
718 bool hasCompositedMask() const; | 718 bool hasCompositedMask() const; |
719 RenderLayerBacking* backing() const { return m_backing.get(); } | 719 RenderLayerBacking* backing() const { return m_backing.get(); } |
720 RenderLayerBacking* ensureBacking(); | 720 RenderLayerBacking* ensureBacking(); |
721 void clearBacking(bool layerBeingDestroyed = false); | 721 void clearBacking(bool layerBeingDestroyed = false); |
722 bool adjustForForceCompositedScrollingMode(bool) const; | 722 bool adjustForForceCompositedScrollingMode(bool) const; |
723 bool needsCompositedScrolling() const; | 723 bool needsCompositedScrolling() const; |
724 bool needsToBeStackingContainer() const; | 724 bool needsToBeStackingContainer() const; |
| 725 |
| 726 bool hasScrollParent() const; |
| 727 |
725 bool needsCompositingLayersRebuiltForClip(const RenderStyle* oldStyle, const
RenderStyle* newStyle) const; | 728 bool needsCompositingLayersRebuiltForClip(const RenderStyle* oldStyle, const
RenderStyle* newStyle) const; |
726 bool needsCompositingLayersRebuiltForOverflow(const RenderStyle* oldStyle, c
onst RenderStyle* newStyle) const; | 729 bool needsCompositingLayersRebuiltForOverflow(const RenderStyle* oldStyle, c
onst RenderStyle* newStyle) const; |
727 bool needsCompositingLayersRebuiltForFilters(const RenderStyle* oldStyle, co
nst RenderStyle* newStyle, bool didPaintWithFilters) const; | 730 bool needsCompositingLayersRebuiltForFilters(const RenderStyle* oldStyle, co
nst RenderStyle* newStyle, bool didPaintWithFilters) const; |
728 | 731 |
729 bool paintsWithTransparency(PaintBehavior paintBehavior) const | 732 bool paintsWithTransparency(PaintBehavior paintBehavior) const |
730 { | 733 { |
731 return isTransparent() && ((paintBehavior & PaintBehaviorFlattenComposit
ingLayers) || !isComposited()); | 734 return isTransparent() && ((paintBehavior & PaintBehaviorFlattenComposit
ingLayers) || !isComposited()); |
732 } | 735 } |
733 | 736 |
734 bool paintsWithTransform(PaintBehavior) const; | 737 bool paintsWithTransform(PaintBehavior) const; |
(...skipping 260 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
995 bool shouldBeSelfPaintingLayer() const; | 998 bool shouldBeSelfPaintingLayer() const; |
996 | 999 |
997 // Start of ScrollableArea interface | 1000 // Start of ScrollableArea interface |
998 // To be moved to RenderLayerScrollableArea | 1001 // To be moved to RenderLayerScrollableArea |
999 ScrollableArea* enclosingScrollableArea() const; | 1002 ScrollableArea* enclosingScrollableArea() const; |
1000 | 1003 |
1001 void updateNeedsCompositedScrolling(); | 1004 void updateNeedsCompositedScrolling(); |
1002 | 1005 |
1003 public: | 1006 public: |
1004 GraphicsLayer* layerForScrolling() const; | 1007 GraphicsLayer* layerForScrolling() const; |
| 1008 GraphicsLayer* layerForScrollChild() const; |
1005 GraphicsLayer* layerForHorizontalScrollbar() const; | 1009 GraphicsLayer* layerForHorizontalScrollbar() const; |
1006 GraphicsLayer* layerForVerticalScrollbar() const; | 1010 GraphicsLayer* layerForVerticalScrollbar() const; |
1007 GraphicsLayer* layerForScrollCorner() const; | 1011 GraphicsLayer* layerForScrollCorner() const; |
1008 Scrollbar* horizontalScrollbar() const { return m_hBar.get(); } | 1012 Scrollbar* horizontalScrollbar() const { return m_hBar.get(); } |
1009 Scrollbar* verticalScrollbar() const { return m_vBar.get(); } | 1013 Scrollbar* verticalScrollbar() const { return m_vBar.get(); } |
1010 bool usesCompositedScrolling() const; | 1014 bool usesCompositedScrolling() const; |
1011 | 1015 |
1012 bool hasOverlayScrollbars() const; | 1016 bool hasOverlayScrollbars() const; |
1013 | 1017 |
1014 int scrollXOffset() const; | 1018 int scrollXOffset() const; |
(...skipping 312 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1327 | 1331 |
1328 } // namespace WebCore | 1332 } // namespace WebCore |
1329 | 1333 |
1330 #ifndef NDEBUG | 1334 #ifndef NDEBUG |
1331 // Outside the WebCore namespace for ease of invocation from gdb. | 1335 // Outside the WebCore namespace for ease of invocation from gdb. |
1332 void showLayerTree(const WebCore::RenderLayer*); | 1336 void showLayerTree(const WebCore::RenderLayer*); |
1333 void showLayerTree(const WebCore::RenderObject*); | 1337 void showLayerTree(const WebCore::RenderObject*); |
1334 #endif | 1338 #endif |
1335 | 1339 |
1336 #endif // RenderLayer_h | 1340 #endif // RenderLayer_h |
OLD | NEW |