remove clip-bounds query overrides from SkColorSpaceXformCanvas
This is the only SkCanvas subclass currently overriding these, and this leads to buggy interactions with this canvas, saveLayer(), and image filters. The base SkCanvas tracks and can answer these queries just as well as fTarget. A couple other SkCanvas subclasses do override isClipEmpty() and isClipRect(), and these conservative clip tracking SkCanvases can't really answer isClipRect() correctly, so I've left those both. I'm intentionally keeping this CL minimal in case it needs backporting to other branches. I'm going to follow up separately with a GM or unit test that would reproduce the Chrome bug, and with a CL that de-virtualizes these two methods. BUG=chromium:781238 Change-Id: I75bf6b0910115fafe17fa721082acc415bfdae23 Reviewed-on: https://skia-review.googlesource.com/76802 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
This commit is contained in:
parent
cd3871207d
commit
399def9595
@ -286,8 +286,6 @@ public:
|
||||
}
|
||||
|
||||
SkISize getBaseLayerSize() const override { return fTarget->getBaseLayerSize(); }
|
||||
SkRect onGetLocalClipBounds() const override { return fTarget->getLocalClipBounds(); }
|
||||
SkIRect onGetDeviceClipBounds() const override { return fTarget->getDeviceClipBounds(); }
|
||||
bool isClipEmpty() const override { return fTarget->isClipEmpty(); }
|
||||
bool isClipRect() const override { return fTarget->isClipRect(); }
|
||||
bool onPeekPixels(SkPixmap* pixmap) override { return fTarget->peekPixels(pixmap); }
|
||||
|
Loading…
Reference in New Issue
Block a user