| Index: Source/core/paint/ClipRecorder.h
|
| diff --git a/Source/core/paint/ClipRecorder.h b/Source/core/paint/ClipRecorder.h
|
| index 9fea722569798fec58d068cae47a11c30744afbd..eccf137ffba1b8dcf3b583b55d65cf7ef867189e 100644
|
| --- a/Source/core/paint/ClipRecorder.h
|
| +++ b/Source/core/paint/ClipRecorder.h
|
| @@ -6,16 +6,14 @@
|
| #define ClipRecorder_h
|
|
|
| #include "core/paint/ViewDisplayList.h"
|
| -#include "core/rendering/LayerPaintingInfo.h"
|
| -#include "core/rendering/PaintPhase.h"
|
| #include "core/rendering/RenderLayerModelObject.h"
|
| +#include "platform/geometry/LayoutRect.h"
|
| #include "platform/geometry/RoundedRect.h"
|
| -#include "wtf/Vector.h"
|
|
|
| namespace blink {
|
|
|
| -class ClipRect;
|
| -class GraphicsContext;
|
| +class RenderLayerModelObject;
|
| +struct PaintInfo;
|
|
|
| class ClipDisplayItem : public DisplayItem {
|
| public:
|
| @@ -41,33 +39,16 @@ public:
|
|
|
| class ClipRecorder {
|
| public:
|
| -
|
| - enum BorderRadiusClippingRule { IncludeSelfForBorderRadius, DoNotIncludeSelfForBorderRadius };
|
| -
|
| - // Set rounded clip rectangles defined by border radii all the way from the LayerPaintingInfo
|
| - // "root" layer down to the specified layer (or the parent of said layer, in case
|
| - // BorderRadiusClippingRule says to skip self). fragmentOffset is used for multicol, to specify
|
| - // the translation required to get from flow thread coordinates to visual coordinates for a
|
| - // certain column.
|
| - // FIXME: The BorderRadiusClippingRule parameter is really useless now. If we want to skip self,
|
| - // why not just supply the parent layer as the first parameter instead?
|
| - // FIXME: The ClipRect passed is in visual coordinates (not flow thread coordinates), but at the
|
| - // same time we pass a fragmentOffset, so that we can translate from flow thread coordinates to
|
| - // visual coordinates. This may look rather confusing/redundant, but it is needed for rounded
|
| - // border clipping. Would be nice to clean up this.
|
| - explicit ClipRecorder(const RenderLayerModelObject*, GraphicsContext*, DisplayItem::Type, const ClipRect&, const LayerPaintingInfo* localPaintingInfo, const LayoutPoint& fragmentOffset, PaintLayerFlags, BorderRadiusClippingRule = IncludeSelfForBorderRadius);
|
| -
|
| + ClipRecorder(RenderLayerModelObject&, const PaintInfo&, const LayoutRect& clipRect);
|
| ~ClipRecorder();
|
|
|
| + static DisplayItem::Type paintPhaseToClipType(PaintPhase);
|
| private:
|
| -
|
| - void collectRoundedRectClips(RenderLayer&, const LayerPaintingInfo& localPaintingInfo, GraphicsContext*, const LayoutPoint& fragmentOffset, PaintLayerFlags,
|
| - BorderRadiusClippingRule, Vector<RoundedRect>& roundedRectClips);
|
| -
|
| - GraphicsContext* m_graphicsContext;
|
| - const RenderLayerModelObject* m_renderer;
|
| + LayoutRect m_clipRect;
|
| + const PaintInfo& m_paintInfo;
|
| + RenderLayerModelObject& m_canvas;
|
| };
|
|
|
| } // namespace blink
|
|
|
| -#endif // ViewDisplayList_h
|
| +#endif // ClipRecorder_h
|
|
|