summaryrefslogtreecommitdiffstats
path: root/WebCore/rendering/RenderLayer.h
diff options
context:
space:
mode:
Diffstat (limited to 'WebCore/rendering/RenderLayer.h')
-rw-r--r--WebCore/rendering/RenderLayer.h37
1 files changed, 33 insertions, 4 deletions
diff --git a/WebCore/rendering/RenderLayer.h b/WebCore/rendering/RenderLayer.h
index 746c6fa..f300d76 100644
--- a/WebCore/rendering/RenderLayer.h
+++ b/WebCore/rendering/RenderLayer.h
@@ -303,6 +303,7 @@ public:
CheckForRepaint = 1 << 1,
IsCompositingUpdateRoot = 1 << 2,
UpdateCompositingLayers = 1 << 3,
+ UpdatePagination = 1 << 4
};
typedef unsigned UpdateLayerPositionsFlags;
void updateLayerPositions(UpdateLayerPositionsFlags = DoFullRepaint | IsCompositingUpdateRoot | UpdateCompositingLayers, IntPoint* cachedOffset = 0);
@@ -486,12 +487,35 @@ private:
void paintLayer(RenderLayer* rootLayer, GraphicsContext*, const IntRect& paintDirtyRect,
PaintBehavior, RenderObject* paintingRoot, RenderObject::OverlapTestRequestMap* = 0,
- PaintLayerFlags paintFlags = 0);
+ PaintLayerFlags = 0);
+ void paintList(Vector<RenderLayer*>*, RenderLayer* rootLayer, GraphicsContext* p,
+ const IntRect& paintDirtyRect, PaintBehavior,
+ RenderObject* paintingRoot, RenderObject::OverlapTestRequestMap*,
+ PaintLayerFlags);
+ void paintPaginatedChildLayer(RenderLayer* childLayer, RenderLayer* rootLayer, GraphicsContext*,
+ const IntRect& paintDirtyRect, PaintBehavior,
+ RenderObject* paintingRoot, RenderObject::OverlapTestRequestMap*,
+ PaintLayerFlags);
+ void paintChildLayerIntoColumns(RenderLayer* childLayer, RenderLayer* rootLayer, GraphicsContext*,
+ const IntRect& paintDirtyRect, PaintBehavior,
+ RenderObject* paintingRoot, RenderObject::OverlapTestRequestMap*,
+ PaintLayerFlags, const Vector<RenderLayer*>& columnLayers, size_t columnIndex);
RenderLayer* hitTestLayer(RenderLayer* rootLayer, RenderLayer* containerLayer, const HitTestRequest& request, HitTestResult& result,
- const IntRect& hitTestRect, const IntPoint& hitTestPoint, bool appliedTransform,
- const HitTestingTransformState* transformState = 0, double* zOffset = 0);
-
+ const IntRect& hitTestRect, const IntPoint& hitTestPoint, bool appliedTransform,
+ const HitTestingTransformState* transformState = 0, double* zOffset = 0);
+ RenderLayer* hitTestList(Vector<RenderLayer*>*, RenderLayer* rootLayer, const HitTestRequest& request, HitTestResult& result,
+ const IntRect& hitTestRect, const IntPoint& hitTestPoint,
+ const HitTestingTransformState* transformState, double* zOffsetForDescendants, double* zOffset,
+ const HitTestingTransformState* unflattenedTransformState, bool depthSortDescendants);
+ RenderLayer* hitTestPaginatedChildLayer(RenderLayer* childLayer, RenderLayer* rootLayer, const HitTestRequest& request, HitTestResult& result,
+ const IntRect& hitTestRect, const IntPoint& hitTestPoint,
+ const HitTestingTransformState* transformState, double* zOffset);
+ RenderLayer* hitTestChildLayerColumns(RenderLayer* childLayer, RenderLayer* rootLayer, const HitTestRequest& request, HitTestResult& result,
+ const IntRect& hitTestRect, const IntPoint& hitTestPoint,
+ const HitTestingTransformState* transformState, double* zOffset,
+ const Vector<RenderLayer*>& columnLayers, size_t columnIndex);
+
PassRefPtr<HitTestingTransformState> createLocalTransformState(RenderLayer* rootLayer, RenderLayer* containerLayer,
const IntRect& hitTestRect, const IntPoint& hitTestPoint,
const HitTestingTransformState* containerTransformState) const;
@@ -548,6 +572,9 @@ private:
void updateScrollCornerStyle();
void updateResizerStyle();
+ void updatePagination();
+ bool isPaginated() const { return m_isPaginated; }
+
#if USE(ACCELERATED_COMPOSITING)
bool hasCompositingDescendant() const { return m_hasCompositingDescendant; }
void setHasCompositingDescendant(bool b) { m_hasCompositingDescendant = b; }
@@ -641,6 +668,8 @@ protected:
bool m_visibleDescendantStatusDirty : 1;
bool m_hasVisibleDescendant : 1;
+ bool m_isPaginated : 1; // If we think this layer is split by a multi-column ancestor, then this bit will be set.
+
bool m_3DTransformedDescendantStatusDirty : 1;
bool m_has3DTransformedDescendant : 1; // Set on a stacking context layer that has 3D descendants anywhere
// in a preserves3D hierarchy. Hint to do 3D-aware hit testing.