diff options
author | Florin Malita <fmalita@chromium.org> | 2016-12-04 11:44:52 -0500 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2016-12-05 15:24:58 +0000 |
commit | d8c278af51f0e5b3f98f66320acb827310b50e2c (patch) | |
tree | bd0acd560879f20f9a2d5a5e5b1c4e3dd4d90bf3 | |
parent | e2e2ae23751d5a81f9cc9db8df2f5064108248aa (diff) |
Add no-op draw overrides to SkNoDrawCanvas
SkNoDrawCanvas is not backed by pixels, but for draw ops not intercepted
by clients we abort rasterization failry late (SkNullBlitter).
BUG=chromium:668925
R=reed@google.com
Change-Id: I4cd80dbbc262936d33410275051ea0b9c04fbc6c
Reviewed-on: https://skia-review.googlesource.com/5543
Commit-Queue: Florin Malita <fmalita@google.com>
Reviewed-by: Mike Reed <reed@google.com>
-rw-r--r-- | include/utils/SkNoDrawCanvas.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/include/utils/SkNoDrawCanvas.h b/include/utils/SkNoDrawCanvas.h index e8c5d7e5ca..316a1c0e02 100644 --- a/include/utils/SkNoDrawCanvas.h +++ b/include/utils/SkNoDrawCanvas.h @@ -30,6 +30,46 @@ public: protected: SaveLayerStrategy getSaveLayerStrategy(const SaveLayerRec& rec) override; + // No-op overrides for aborting rasterization earlier than SkNullBlitter. + void onDrawDRRect(const SkRRect&, const SkRRect&, const SkPaint&) override {} + void onDrawDrawable(SkDrawable*, const SkMatrix*) override {} + void onDrawText(const void*, size_t, SkScalar, SkScalar, const SkPaint&) override {} + void onDrawPosText(const void*, size_t, const SkPoint[], const SkPaint&) override {} + void onDrawPosTextH(const void*, size_t, const SkScalar[], SkScalar, const SkPaint&) override {} + void onDrawTextOnPath(const void*, size_t, const SkPath&, const SkMatrix*, + const SkPaint&) override {} + void onDrawTextRSXform(const void*, size_t, const SkRSXform[], const SkRect*, + const SkPaint&) override {} + void onDrawTextBlob(const SkTextBlob*, SkScalar, SkScalar, const SkPaint&) override {} + void onDrawPatch(const SkPoint[12], const SkColor[4], const SkPoint[4], SkBlendMode, + const SkPaint&) override {} + + void onDrawPaint(const SkPaint&) override {} + void onDrawPoints(PointMode, size_t, const SkPoint[], const SkPaint&) override {} + void onDrawRect(const SkRect&, const SkPaint&) override {} + void onDrawRegion(const SkRegion&, const SkPaint&) override {} + void onDrawOval(const SkRect&, const SkPaint&) override {} + void onDrawArc(const SkRect&, SkScalar, SkScalar, bool, const SkPaint&) override {} + void onDrawRRect(const SkRRect&, const SkPaint&) override {} + void onDrawPath(const SkPath&, const SkPaint&) override {} + void onDrawBitmap(const SkBitmap&, SkScalar, SkScalar, const SkPaint*) override {} + void onDrawBitmapRect(const SkBitmap&, const SkRect*, const SkRect&, const SkPaint*, + SrcRectConstraint) override {} + void onDrawImage(const SkImage*, SkScalar, SkScalar, const SkPaint*) override {} + void onDrawImageRect(const SkImage*, const SkRect*, const SkRect&, const SkPaint*, + SrcRectConstraint) override {} + void onDrawImageNine(const SkImage*, const SkIRect&, const SkRect&, const SkPaint*) override {} + void onDrawBitmapNine(const SkBitmap&, const SkIRect&, const SkRect&, + const SkPaint*) override {} + void onDrawImageLattice(const SkImage*, const Lattice&, const SkRect&, + const SkPaint*) override {} + void onDrawBitmapLattice(const SkBitmap&, const Lattice&, const SkRect&, + const SkPaint*) override {} + void onDrawVertices(VertexMode, int, const SkPoint[], const SkPoint[], const SkColor[], + SkBlendMode, const uint16_t[], int, const SkPaint&) override {} + void onDrawAtlas(const SkImage*, const SkRSXform[], const SkRect[], const SkColor[], + int, SkBlendMode, const SkRect*, const SkPaint*) override {} + private: typedef SkCanvas INHERITED; }; |