diff options
Diffstat (limited to 'core/java/android')
| -rw-r--r-- | core/java/android/view/DisplayListCanvas.java | 6 | ||||
| -rw-r--r-- | core/java/android/view/TextureLayer.java (renamed from core/java/android/view/HardwareLayer.java) | 19 | ||||
| -rw-r--r-- | core/java/android/view/TextureView.java | 10 | ||||
| -rw-r--r-- | core/java/android/view/ThreadedRenderer.java | 10 |
4 files changed, 22 insertions, 23 deletions
diff --git a/core/java/android/view/DisplayListCanvas.java b/core/java/android/view/DisplayListCanvas.java index 8f9ae0e3f48c..671532c90bc8 100644 --- a/core/java/android/view/DisplayListCanvas.java +++ b/core/java/android/view/DisplayListCanvas.java @@ -198,8 +198,8 @@ public final class DisplayListCanvas extends RecordingCanvas { * * @param layer The layer to composite on this canvas */ - void drawHardwareLayer(HardwareLayer layer) { - nDrawLayer(mNativeCanvasWrapper, layer.getLayerHandle()); + void drawTextureLayer(TextureLayer layer) { + nDrawTextureLayer(mNativeCanvasWrapper, layer.getLayerHandle()); } /////////////////////////////////////////////////////////////////////////// @@ -257,7 +257,7 @@ public final class DisplayListCanvas extends RecordingCanvas { @CriticalNative private static native void nDrawRenderNode(long renderer, long renderNode); @CriticalNative - private static native void nDrawLayer(long renderer, long layer); + private static native void nDrawTextureLayer(long renderer, long layer); @CriticalNative private static native void nDrawCircle(long renderer, long propCx, long propCy, long propRadius, long propPaint); diff --git a/core/java/android/view/HardwareLayer.java b/core/java/android/view/TextureLayer.java index 7af10201052a..35a886fa27a3 100644 --- a/core/java/android/view/HardwareLayer.java +++ b/core/java/android/view/TextureLayer.java @@ -25,19 +25,17 @@ import android.graphics.SurfaceTexture; import com.android.internal.util.VirtualRefBasePtr; /** - * A hardware layer can be used to render graphics operations into a hardware - * friendly buffer. For instance, with an OpenGL backend a hardware layer - * would use a Frame Buffer Object (FBO.) The hardware layer can be used as - * a drawing cache when a complex set of graphics operations needs to be - * drawn several times. + * TextureLayer represents a SurfaceTexture that will be composited by RenderThread into the + * frame when drawn in a HW accelerated Canvas. This is backed by a DeferredLayerUpdater on + * the native side. * * @hide */ -final class HardwareLayer { +final class TextureLayer { private ThreadedRenderer mRenderer; private VirtualRefBasePtr mFinalizer; - private HardwareLayer(ThreadedRenderer renderer, long deferredUpdater) { + private TextureLayer(ThreadedRenderer renderer, long deferredUpdater) { if (renderer == null || deferredUpdater == 0) { throw new IllegalArgumentException("Either hardware renderer: " + renderer + " or deferredUpdater: " + deferredUpdater + " is invalid"); @@ -141,11 +139,12 @@ final class HardwareLayer { mRenderer.pushLayerUpdate(this); } - static HardwareLayer adoptTextureLayer(ThreadedRenderer renderer, long layer) { - return new HardwareLayer(renderer, layer); + static TextureLayer adoptTextureLayer(ThreadedRenderer renderer, long layer) { + return new TextureLayer(renderer, layer); } - private static native boolean nPrepare(long layerUpdater, int width, int height, boolean isOpaque); + private static native boolean nPrepare(long layerUpdater, int width, int height, + boolean isOpaque); private static native void nSetLayerPaint(long layerUpdater, long paint); private static native void nSetTransform(long layerUpdater, long matrix); private static native void nSetSurfaceTexture(long layerUpdater, SurfaceTexture surface); diff --git a/core/java/android/view/TextureView.java b/core/java/android/view/TextureView.java index 25dce998d68f..371794045f85 100644 --- a/core/java/android/view/TextureView.java +++ b/core/java/android/view/TextureView.java @@ -106,7 +106,7 @@ import android.util.Log; public class TextureView extends View { private static final String LOG_TAG = "TextureView"; - private HardwareLayer mLayer; + private TextureLayer mLayer; private SurfaceTexture mSurface; private SurfaceTextureListener mListener; private boolean mHadSurface; @@ -336,13 +336,13 @@ public class TextureView extends View { if (canvas.isHardwareAccelerated()) { DisplayListCanvas displayListCanvas = (DisplayListCanvas) canvas; - HardwareLayer layer = getHardwareLayer(); + TextureLayer layer = getTextureLayer(); if (layer != null) { applyUpdate(); applyTransformMatrix(); mLayer.setLayerPaint(mLayerPaint); // ensure layer paint is up to date - displayListCanvas.drawHardwareLayer(layer); + displayListCanvas.drawTextureLayer(layer); } } } @@ -369,7 +369,7 @@ public class TextureView extends View { } } - HardwareLayer getHardwareLayer() { + TextureLayer getTextureLayer() { if (mLayer == null) { if (mAttachInfo == null || mAttachInfo.mThreadedRenderer == null) { return null; @@ -602,7 +602,7 @@ public class TextureView extends View { // the layer here thanks to the validate() call at the beginning of // this method if (mLayer == null && mUpdateSurface) { - getHardwareLayer(); + getTextureLayer(); } if (mLayer != null) { diff --git a/core/java/android/view/ThreadedRenderer.java b/core/java/android/view/ThreadedRenderer.java index e50d40ef098f..59472d910c0a 100644 --- a/core/java/android/view/ThreadedRenderer.java +++ b/core/java/android/view/ThreadedRenderer.java @@ -833,9 +833,9 @@ public final class ThreadedRenderer { * * @return A hardware layer */ - HardwareLayer createTextureLayer() { + TextureLayer createTextureLayer() { long layer = nCreateTextureLayer(mNativeProxy); - return HardwareLayer.adoptTextureLayer(this, layer); + return TextureLayer.adoptTextureLayer(this, layer); } @@ -844,7 +844,7 @@ public final class ThreadedRenderer { } - boolean copyLayerInto(final HardwareLayer layer, final Bitmap bitmap) { + boolean copyLayerInto(final TextureLayer layer, final Bitmap bitmap) { return nCopyLayerInto(mNativeProxy, layer.getDeferredLayerUpdater(), bitmap); } @@ -855,7 +855,7 @@ public final class ThreadedRenderer { * * @param layer The hardware layer that needs an update */ - void pushLayerUpdate(HardwareLayer layer) { + void pushLayerUpdate(TextureLayer layer) { nPushLayerUpdate(mNativeProxy, layer.getDeferredLayerUpdater()); } @@ -863,7 +863,7 @@ public final class ThreadedRenderer { * Tells the HardwareRenderer that the layer is destroyed. The renderer * should remove the layer from any update queues. */ - void onLayerDestroyed(HardwareLayer layer) { + void onLayerDestroyed(TextureLayer layer) { nCancelLayerUpdate(mNativeProxy, layer.getDeferredLayerUpdater()); } |
