aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Matt Sarett <msarett@google.com>2016-12-12 18:35:43 -0500
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2016-12-13 13:51:55 +0000
commitbe3bdd9000cfab825c8d9ea7126abefd0665ab3a (patch)
treeab1e590ac80575faf089275463e62b4b0fe04135
parent3fd9e443002d27aa7b92995d8547f813e61c0f45 (diff)
Fix Android overdraw detection
Now that SkNWayCanvas inherits from SkNoDrawCanvas, we need to override onDrawDrawable(). BUG=skia: Change-Id: Id8cf62f5675199202580d3ee94c71a0ae231c81e Reviewed-on: https://skia-review.googlesource.com/5865 Commit-Queue: Derek Sollenberger <djsollen@google.com> Reviewed-by: Derek Sollenberger <djsollen@google.com>
-rw-r--r--src/core/SkOverdrawCanvas.cpp5
-rw-r--r--src/core/SkOverdrawCanvas.h1
2 files changed, 6 insertions, 0 deletions
diff --git a/src/core/SkOverdrawCanvas.cpp b/src/core/SkOverdrawCanvas.cpp
index ac6b110d75..b51479600a 100644
--- a/src/core/SkOverdrawCanvas.cpp
+++ b/src/core/SkOverdrawCanvas.cpp
@@ -6,6 +6,7 @@
*/
#include "SkColorFilter.h"
+#include "SkDrawable.h"
#include "SkFindAndPlaceGlyph.h"
#include "SkLatticeIter.h"
#include "SkOverdrawCanvas.h"
@@ -293,6 +294,10 @@ void SkOverdrawCanvas::onDrawBitmapLattice(const SkBitmap& bitmap, const Lattice
this->onDrawImageLattice(image.get(), lattice, dst, paint);
}
+void SkOverdrawCanvas::onDrawDrawable(SkDrawable* drawable, const SkMatrix* matrix) {
+ drawable->draw(this, matrix);
+}
+
void SkOverdrawCanvas::onDrawPicture(const SkPicture*, const SkMatrix*, const SkPaint*) {
SkASSERT(false);
return;
diff --git a/src/core/SkOverdrawCanvas.h b/src/core/SkOverdrawCanvas.h
index d3315412f4..dd584ef0bf 100644
--- a/src/core/SkOverdrawCanvas.h
+++ b/src/core/SkOverdrawCanvas.h
@@ -54,6 +54,7 @@ public:
void onDrawBitmapNine(const SkBitmap&, const SkIRect&, const SkRect&, const SkPaint*) override;
void onDrawBitmapLattice(const SkBitmap&, const Lattice&, const SkRect&,
const SkPaint*) override;
+ void onDrawDrawable(SkDrawable*, const SkMatrix*) override;
void onDrawPicture(const SkPicture*, const SkMatrix*, const SkPaint*) override;
private: