diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/core/SkCanvas.h | 4 | ||||
-rw-r--r-- | include/gpu/GrDrawContext.h | 16 |
2 files changed, 19 insertions, 1 deletions
diff --git a/include/core/SkCanvas.h b/include/core/SkCanvas.h index 780af107af..d9b3282d3e 100644 --- a/include/core/SkCanvas.h +++ b/include/core/SkCanvas.h @@ -708,6 +708,10 @@ public: @param paint The paint used to draw the region */ void drawRegion(const SkRegion& region, const SkPaint& paint) { + if (region.isEmpty()) { + return; + } + this->onDrawRegion(region, paint); } diff --git a/include/gpu/GrDrawContext.h b/include/gpu/GrDrawContext.h index 993bb56f9e..29c7d1c12e 100644 --- a/include/gpu/GrDrawContext.h +++ b/include/gpu/GrDrawContext.h @@ -216,7 +216,21 @@ public: const SkRSXform xform[], const SkRect texRect[], const SkColor colors[]); - + + /** + * Draws a region. + * + * @param paint describes how to color pixels + * @param viewMatrix transformation matrix + * @param region the region to be drawn + * @param style style to apply to the region + */ + void drawRegion(const GrClip&, + const GrPaint& paint, + const SkMatrix& viewMatrix, + const SkRegion& region, + const GrStyle& style); + /** * Draws an oval. * |