diff --git a/core/java/android/view/HardwareLayer.java b/core/java/android/view/HardwareLayer.java index 49450bd82bb84..a97167b6ff74b 100644 --- a/core/java/android/view/HardwareLayer.java +++ b/core/java/android/view/HardwareLayer.java @@ -167,7 +167,7 @@ abstract class HardwareLayer { /** * Specifies the display list to use to refresh the layer. - * + * * @param displayList The display list containing the drawing commands to * execute in this layer * @param dirtyRect The dirty region of the layer that needs to be redrawn diff --git a/core/java/android/view/TextureView.java b/core/java/android/view/TextureView.java index c1e9946db8c9e..fc02cc1fc7f72 100644 --- a/core/java/android/view/TextureView.java +++ b/core/java/android/view/TextureView.java @@ -315,7 +315,7 @@ public class TextureView extends View { } @Override - HardwareLayer getHardwareLayer(boolean immediateRefresh) { + HardwareLayer getHardwareLayer() { if (mLayer == null) { if (mAttachInfo == null || mAttachInfo.mHardwareRenderer == null) { return null; diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java index c982d7a9388c0..9457067f5651b 100644 --- a/core/java/android/view/View.java +++ b/core/java/android/view/View.java @@ -10221,7 +10221,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal if (mAttachInfo.mHardwareRenderer != null && mAttachInfo.mHardwareRenderer.isEnabled() && mAttachInfo.mHardwareRenderer.validate()) { - getHardwareLayer(true); + getHardwareLayer(); } break; case LAYER_TYPE_SOFTWARE: @@ -10243,7 +10243,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal * * @return A HardwareLayer ready to render, or null if an error occurred. */ - HardwareLayer getHardwareLayer(boolean immediateRefresh) { + HardwareLayer getHardwareLayer() { if (mAttachInfo == null || mAttachInfo.mHardwareRenderer == null || !mAttachInfo.mHardwareRenderer.isEnabled()) { return null; @@ -10273,33 +10273,8 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal return null; } - if (!immediateRefresh) { - mHardwareLayer.redraw(getDisplayList(), mLocalDirtyRect); - mLocalDirtyRect.setEmpty(); - } else { - HardwareCanvas currentCanvas = mAttachInfo.mHardwareCanvas; - final HardwareCanvas canvas = mHardwareLayer.start(currentCanvas); - - // Make sure all the GPU resources have been properly allocated - if (canvas == null) { - mHardwareLayer.end(currentCanvas); - return null; - } - - mAttachInfo.mHardwareCanvas = canvas; - try { - canvas.setViewport(width, height); - canvas.onPreDraw(mLocalDirtyRect); - mLocalDirtyRect.setEmpty(); - - canvas.drawDisplayList(getDisplayList(), mRight - mLeft, mBottom - mTop, null, - DisplayList.FLAG_CLIP_CHILDREN); - } finally { - canvas.onPostDraw(); - mHardwareLayer.end(currentCanvas); - mAttachInfo.mHardwareCanvas = currentCanvas; - } - } + mHardwareLayer.redraw(getDisplayList(), mLocalDirtyRect); + mLocalDirtyRect.setEmpty(); } return mHardwareLayer; @@ -11266,7 +11241,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal if (hasNoCache) { boolean layerRendered = false; if (layerType == LAYER_TYPE_HARDWARE) { - final HardwareLayer layer = getHardwareLayer(false); + final HardwareLayer layer = getHardwareLayer(); if (layer != null && layer.isValid()) { mLayerPaint.setAlpha((int) (alpha * 255)); ((HardwareCanvas) canvas).drawHardwareLayer(layer, 0, 0, mLayerPaint);