summaryrefslogtreecommitdiffstats
path: root/skia/ext
diff options
context:
space:
mode:
authorfmalita@chromium.org <fmalita@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-03-13 17:32:35 +0000
committerfmalita@chromium.org <fmalita@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-03-13 17:32:35 +0000
commit6163bb68624d9666aad1bf4791b4efcb3f14066f (patch)
tree3af5e8b07f3043258e5eeb904ff186e4c1102fad /skia/ext
parenta26f4aec68d4e5637e19e156a4b34518c6a5804c (diff)
downloadchromium_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.cc25
-rw-r--r--skia/ext/analysis_canvas.h13
-rw-r--r--skia/ext/benchmarking_canvas.cc15
-rw-r--r--skia/ext/pixel_ref_utils.cc18
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,