Have SkColorSpaceXformCanas tell SkCanvas about clips.
authorMike Klein <mtklein@chromium.org>
Tue, 21 Mar 2017 02:47:33 +0000 (22:47 -0400)
committerSkia Commit-Bot <skia-commit-bot@chromium.org>
Tue, 21 Mar 2017 13:55:20 +0000 (13:55 +0000)
This should make queries like SkCanvas::getLocalClipBounds() work.

BUG=chromium:703363

Change-Id: I1d8a39880152ba1da99cc8b289072ef747271bc8
Reviewed-on: https://skia-review.googlesource.com/9915
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>

src/core/SkColorSpaceXformCanvas.cpp

index e8fc8e4..4f50c4d 100644 (file)
@@ -376,15 +376,19 @@ public:
     void didSetMatrix(const SkMatrix& m) override { fTarget->setMatrix(m); }
 
     void onClipRect(const SkRect& clip, SkClipOp op, ClipEdgeStyle style) override {
+        SkCanvas::onClipRect(clip, op, style);
         fTarget->clipRect(clip, op, style);
     }
     void onClipRRect(const SkRRect& clip, SkClipOp op, ClipEdgeStyle style) override {
+        SkCanvas::onClipRRect(clip, op, style);
         fTarget->clipRRect(clip, op, style);
     }
     void onClipPath(const SkPath& clip, SkClipOp op, ClipEdgeStyle style) override {
+        SkCanvas::onClipPath(clip, op, style);
         fTarget->clipPath(clip, op, style);
     }
     void onClipRegion(const SkRegion& clip, SkClipOp op) override {
+        SkCanvas::onClipRegion(clip, op);
         fTarget->clipRegion(clip, op);
     }