summaryrefslogtreecommitdiffstats
path: root/chromium/cc/paint/skia_paint_canvas.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/cc/paint/skia_paint_canvas.cc')
-rw-r--r--chromium/cc/paint/skia_paint_canvas.cc15
1 files changed, 10 insertions, 5 deletions
diff --git a/chromium/cc/paint/skia_paint_canvas.cc b/chromium/cc/paint/skia_paint_canvas.cc
index 3a6dfbbf907..72d34e97c58 100644
--- a/chromium/cc/paint/skia_paint_canvas.cc
+++ b/chromium/cc/paint/skia_paint_canvas.cc
@@ -24,12 +24,13 @@ SkiaPaintCanvas::SkiaPaintCanvas(SkCanvas* canvas,
SkiaPaintCanvas::SkiaPaintCanvas(const SkBitmap& bitmap,
ImageProvider* image_provider)
: canvas_(new SkCanvas(bitmap)),
+ bitmap_(bitmap),
owned_(canvas_),
image_provider_(image_provider) {}
SkiaPaintCanvas::SkiaPaintCanvas(const SkBitmap& bitmap,
const SkSurfaceProps& props)
- : canvas_(new SkCanvas(bitmap, props)), owned_(canvas_) {}
+ : canvas_(new SkCanvas(bitmap, props)), bitmap_(bitmap), owned_(canvas_) {}
SkiaPaintCanvas::~SkiaPaintCanvas() = default;
@@ -37,6 +38,14 @@ SkImageInfo SkiaPaintCanvas::imageInfo() const {
return canvas_->imageInfo();
}
+void* SkiaPaintCanvas::accessTopLayerPixels(SkImageInfo* info,
+ size_t* rowBytes,
+ SkIPoint* origin) {
+ if (bitmap_.isNull() || bitmap_.isImmutable())
+ return nullptr;
+ return canvas_->accessTopLayerPixels(info, rowBytes, origin);
+}
+
void SkiaPaintCanvas::flush() {
canvas_->flush();
}
@@ -319,10 +328,6 @@ bool SkiaPaintCanvas::isClipEmpty() const {
return canvas_->isClipEmpty();
}
-bool SkiaPaintCanvas::isClipRect() const {
- return canvas_->isClipRect();
-}
-
const SkMatrix& SkiaPaintCanvas::getTotalMatrix() const {
return canvas_->getTotalMatrix();
}