| Index: include/core/SkCanvas.h
|
| diff --git a/include/core/SkCanvas.h b/include/core/SkCanvas.h
|
| index f514d18b5ee89e113a54035e7e5d9f8a7db9e59d..5088d7ded5268b9e86808c3c7d0148c7bcc891a4 100644
|
| --- a/include/core/SkCanvas.h
|
| +++ b/include/core/SkCanvas.h
|
| @@ -1265,11 +1265,6 @@ protected:
|
| SkIRect* intersection,
|
| const SkImageFilter* imageFilter = NULL);
|
|
|
| - // Called by child classes that override clipPath and clipRRect to only
|
| - // track fast conservative clip bounds, rather than exact clips.
|
| - void updateClipConservativelyUsingBounds(const SkRect&, SkRegion::Op,
|
| - bool inverseFilled);
|
| -
|
| // notify our surface (if we have one) that we are about to draw, so it
|
| // can perform copy-on-write or invalidate any cached images
|
| void predrawNotify();
|
| @@ -1309,13 +1304,22 @@ private:
|
| friend class SkDebugCanvas; // needs experimental fAllowSimplifyClip
|
| friend class SkDeferredDevice; // needs getTopDevice()
|
| friend class SkSurface_Raster; // needs getDevice()
|
| + friend class SkRecorder; // InitFlags
|
| + friend class SkNoSaveLayerCanvas; // InitFlags
|
|
|
| + enum InitFlags {
|
| + kDefault_InitFlags = 0,
|
| + kConservativeRasterClip_InitFlag = 1 << 0,
|
| + };
|
| + SkCanvas(int width, int height, InitFlags flags);
|
| + SkCanvas(SkBaseDevice*, InitFlags flags);
|
| +
|
| // needs gettotalclip()
|
| friend SkCanvasState* SkCanvasStateUtils::CaptureCanvasState(SkCanvas*);
|
|
|
| SkBaseDevice* createLayerDevice(const SkImageInfo&);
|
|
|
| - SkBaseDevice* init(SkBaseDevice*);
|
| + SkBaseDevice* init(SkBaseDevice*, InitFlags);
|
|
|
| /**
|
| * DEPRECATED
|
| @@ -1365,6 +1369,7 @@ private:
|
| mutable bool fCachedLocalClipBoundsDirty;
|
| bool fAllowSoftClip;
|
| bool fAllowSimplifyClip;
|
| + bool fConservativeRasterClip;
|
|
|
| const SkRect& getLocalClipBounds() const {
|
| if (fCachedLocalClipBoundsDirty) {
|
|
|