diff --git a/core/java/android/view/GLES20Canvas.java b/core/java/android/view/GLES20Canvas.java index ceea9f8f02341..076f1e29fd32d 100644 --- a/core/java/android/view/GLES20Canvas.java +++ b/core/java/android/view/GLES20Canvas.java @@ -799,28 +799,6 @@ class GLES20Canvas extends HardwareCanvas { // TODO: Implement rendering } - @Override - public void drawPicture(Picture picture, Rect dst) { - save(); - translate(dst.left, dst.top); - if (picture.getWidth() > 0 && picture.getHeight() > 0) { - scale(dst.width() / picture.getWidth(), dst.height() / picture.getHeight()); - } - drawPicture(picture); - restore(); - } - - @Override - public void drawPicture(Picture picture, RectF dst) { - save(); - translate(dst.left, dst.top); - if (picture.getWidth() > 0 && picture.getHeight() > 0) { - scale(dst.width() / picture.getWidth(), dst.height() / picture.getHeight()); - } - drawPicture(picture); - restore(); - } - @Override public void drawPoint(float x, float y, Paint paint) { float[] point = getPointStorage(); diff --git a/graphics/java/android/graphics/Canvas.java b/graphics/java/android/graphics/Canvas.java index f18694b07e593..0927ffd548cf1 100644 --- a/graphics/java/android/graphics/Canvas.java +++ b/graphics/java/android/graphics/Canvas.java @@ -203,7 +203,7 @@ public class Canvas { */ public void setBitmap(@Nullable Bitmap bitmap) { if (isHardwareAccelerated()) { - throw new RuntimeException("Can't set a bitmap device on a GL canvas"); + throw new RuntimeException("Can't set a bitmap device on a HW accelerated canvas"); } if (bitmap == null) { diff --git a/graphics/java/android/graphics/Picture.java b/graphics/java/android/graphics/Picture.java index 5aa7c6a8df52e..d28c3d574d05a 100644 --- a/graphics/java/android/graphics/Picture.java +++ b/graphics/java/android/graphics/Picture.java @@ -122,6 +122,11 @@ public class Picture { * @param canvas The picture is drawn to this canvas */ public void draw(Canvas canvas) { + if (canvas.isHardwareAccelerated()) { + throw new IllegalArgumentException( + "Picture playback is only supported on software canvas."); + } + if (mRecordingCanvas != null) { endRecording(); }