| Index: Source/core/paint/PaintInfo.h
|
| diff --git a/Source/core/paint/PaintInfo.h b/Source/core/paint/PaintInfo.h
|
| index 910ff358488751632ba70178c2beece4748db4ae..1f4b0b56f399f33f0e598acd7fa26a84f53da594 100644
|
| --- a/Source/core/paint/PaintInfo.h
|
| +++ b/Source/core/paint/PaintInfo.h
|
| @@ -43,11 +43,13 @@ namespace blink {
|
| class LayoutInline;
|
| class LayoutBoxModelObject;
|
| class LayoutObject;
|
| +class PaintDataCache;
|
|
|
| struct PaintInfo {
|
| PaintInfo(GraphicsContext* newContext, const IntRect& newRect, PaintPhase newPhase, PaintBehavior newPaintBehavior,
|
| LayoutObject* newPaintingRoot = 0, ListHashSet<LayoutInline*>* newOutlineObjects = 0,
|
| - const LayoutBoxModelObject* newPaintContainer = 0)
|
| + const LayoutBoxModelObject* newPaintContainer = 0,
|
| + PaintDataCache* newPaintDataCache = nullptr)
|
| : context(newContext)
|
| , rect(newRect)
|
| , phase(newPhase)
|
| @@ -55,6 +57,7 @@ struct PaintInfo {
|
| , paintingRoot(newPaintingRoot)
|
| , m_paintContainer(newPaintContainer)
|
| , m_outlineObjects(newOutlineObjects)
|
| + , m_paintDataCache(newPaintDataCache)
|
| {
|
| }
|
|
|
| @@ -98,6 +101,8 @@ struct PaintInfo {
|
| rect = localToParentTransform.inverse().mapRect(rect);
|
| }
|
|
|
| + PaintDataCache* paintDataCache() const { return m_paintDataCache; }
|
| +
|
| // FIXME: Introduce setters/getters at some point. Requires a lot of changes throughout layout/.
|
| GraphicsContext* context;
|
| IntRect rect; // dirty rect used for culling non-intersecting layoutObjects
|
| @@ -108,6 +113,7 @@ struct PaintInfo {
|
| private:
|
| const LayoutBoxModelObject* m_paintContainer; // the box model object that originates the current painting
|
| ListHashSet<LayoutInline*>* m_outlineObjects; // used to list outlines that should be painted by a block with inline children
|
| + PaintDataCache* m_paintDataCache; // caches information frequently needed during paint
|
| };
|
|
|
| } // namespace blink
|
|
|