diff options
author | fmalita@chromium.org <fmalita@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-03-13 17:32:35 +0000 |
---|---|---|
committer | fmalita@chromium.org <fmalita@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-03-13 17:32:35 +0000 |
commit | 6163bb68624d9666aad1bf4791b4efcb3f14066f (patch) | |
tree | 3af5e8b07f3043258e5eeb904ff186e4c1102fad /skia/ext | |
parent | a26f4aec68d4e5637e19e156a4b34518c6a5804c (diff) | |
download | chromium_src-6163bb68624d9666aad1bf4791b4efcb3f14066f.zip chromium_src-6163bb68624d9666aad1bf4791b4efcb3f14066f.tar.gz chromium_src-6163bb68624d9666aad1bf4791b4efcb3f14066f.tar.bz2 |
roll skia DEPS to 13776
This updates SkCanvas-derived classes to the new save/restore notifier API.
Chromium base revision: 256629 / a2b1a3e5
Old Skia revision: 13753
New Skia revision: 13776
Control CL: https://codereview.chromium.org/196943005/
This CL was created by Skia's roll_deps.py script.
Bypassing commit queue trybots:
NOTRY=true
Review URL: https://codereview.chromium.org/195893009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@256864 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'skia/ext')
-rw-r--r-- | skia/ext/analysis_canvas.cc | 25 | ||||
-rw-r--r-- | skia/ext/analysis_canvas.h | 13 | ||||
-rw-r--r-- | skia/ext/benchmarking_canvas.cc | 15 | ||||
-rw-r--r-- | skia/ext/pixel_ref_utils.cc | 18 |
4 files changed, 32 insertions, 39 deletions
diff --git a/skia/ext/analysis_canvas.cc b/skia/ext/analysis_canvas.cc index 1e06827..6595077 100644 --- a/skia/ext/analysis_canvas.cc +++ b/skia/ext/analysis_canvas.cc @@ -346,14 +346,16 @@ void AnalysisCanvas::onClipRRect(const SkRRect& rrect, INHERITED::onClipRect(rrect.getBounds(), op, edge_style); } -int AnalysisCanvas::save(SkCanvas::SaveFlags flags) { +void AnalysisCanvas::willSave(SkCanvas::SaveFlags flags) { ++saved_stack_size_; - return INHERITED::save(flags); + INHERITED::willSave(flags); } -int AnalysisCanvas::saveLayer(const SkRect* bounds, - const SkPaint* paint, - SkCanvas::SaveFlags flags) { +SkCanvas::SaveLayerStrategy AnalysisCanvas::willSaveLayer( + const SkRect* bounds, + const SkPaint* paint, + SkCanvas::SaveFlags flags) { + ++saved_stack_size_; SkIRect canvas_ibounds = SkIRect::MakeSize(this->getDeviceSize()); @@ -384,18 +386,13 @@ int AnalysisCanvas::saveLayer(const SkRect* bounds, } } + INHERITED::willSaveLayer(bounds, paint, flags); // Actually saving a layer here could cause a new bitmap to be created // and real rendering to occur. - int count = INHERITED::save(flags); - if (bounds) { - INHERITED::clipRectBounds(bounds, flags, NULL); - } - return count; + return kNoLayer_SaveLayerStrategy; } -void AnalysisCanvas::restore() { - INHERITED::restore(); - +void AnalysisCanvas::willRestore() { DCHECK(saved_stack_size_); if (saved_stack_size_) { --saved_stack_size_; @@ -408,6 +405,8 @@ void AnalysisCanvas::restore() { force_not_transparent_stack_level_ = kNoLayer; } } + + INHERITED::willRestore(); } } // namespace skia diff --git a/skia/ext/analysis_canvas.h b/skia/ext/analysis_canvas.h index 9975286..922a3ee 100644 --- a/skia/ext/analysis_canvas.h +++ b/skia/ext/analysis_canvas.h @@ -31,13 +31,6 @@ class SK_API AnalysisCanvas : public SkCanvas, public SkDrawPictureCallback { virtual bool abortDrawing() OVERRIDE; // SkCanvas overrides. - virtual int saveLayer(const SkRect* bounds, - const SkPaint* paint, - SkCanvas::SaveFlags flags) OVERRIDE; - virtual int save(SaveFlags flags = kMatrixClip_SaveFlag) OVERRIDE; - - virtual void restore() OVERRIDE; - virtual void clear(SkColor) OVERRIDE; virtual void drawPaint(const SkPaint& paint) OVERRIDE; virtual void drawPoints(PointMode, @@ -96,6 +89,12 @@ class SK_API AnalysisCanvas : public SkCanvas, public SkDrawPictureCallback { const SkPaint&) OVERRIDE; protected: + virtual void willSave(SaveFlags) OVERRIDE; + virtual SaveLayerStrategy willSaveLayer(const SkRect*, + const SkPaint*, + SaveFlags) OVERRIDE; + virtual void willRestore() OVERRIDE; + virtual void onClipRect(const SkRect& rect, SkRegion::Op op, ClipEdgeStyle edge_style) OVERRIDE; diff --git a/skia/ext/benchmarking_canvas.cc b/skia/ext/benchmarking_canvas.cc index a0bb8a0..ec2ff3c 100644 --- a/skia/ext/benchmarking_canvas.cc +++ b/skia/ext/benchmarking_canvas.cc @@ -40,20 +40,21 @@ public: } // SkCanvas overrides. - virtual int save(SaveFlags flags = kMatrixClip_SaveFlag) OVERRIDE { + virtual void willSave(SaveFlags flags) OVERRIDE { AutoStamper stamper(this); - return SkProxyCanvas::save(flags); + SkProxyCanvas::willSave(flags); } - virtual int saveLayer(const SkRect* bounds, const SkPaint* paint, - SaveFlags flags = kARGB_ClipLayer_SaveFlag) OVERRIDE { + virtual SaveLayerStrategy willSaveLayer(const SkRect* bounds, + const SkPaint* paint, + SaveFlags flags) OVERRIDE { AutoStamper stamper(this); - return SkProxyCanvas::saveLayer(bounds, paint, flags); + return SkProxyCanvas::willSaveLayer(bounds, paint, flags); } - virtual void restore() OVERRIDE { + virtual void willRestore() OVERRIDE { AutoStamper stamper(this); - SkProxyCanvas::restore(); + SkProxyCanvas::willRestore(); } virtual void drawPaint(const SkPaint& paint) OVERRIDE { diff --git a/skia/ext/pixel_ref_utils.cc b/skia/ext/pixel_ref_utils.cc index dce375f..26aef37 100644 --- a/skia/ext/pixel_ref_utils.cc +++ b/skia/ext/pixel_ref_utils.cc @@ -353,21 +353,15 @@ class NoSaveLayerCanvas : public SkCanvas { public: NoSaveLayerCanvas(SkBaseDevice* device) : INHERITED(device) {} + protected: // Turn saveLayer() into save() for speed, should not affect correctness. - virtual int saveLayer(const SkRect* bounds, - const SkPaint* paint, - SaveFlags flags) SK_OVERRIDE { - - // Like SkPictureRecord, we don't want to create layers, but we do need - // to respect the save and (possibly) its rect-clip. - int count = this->INHERITED::save(flags); - if (bounds) { - this->INHERITED::clipRectBounds(bounds, flags, NULL); - } - return count; + virtual SaveLayerStrategy willSaveLayer(const SkRect* bounds, + const SkPaint* paint, + SaveFlags flags) SK_OVERRIDE { + this->INHERITED::willSaveLayer(bounds, paint, flags); + return kNoLayer_SaveLayerStrategy; } - protected: // Disable aa for speed. virtual void onClipRect(const SkRect& rect, SkRegion::Op op, |