summaryrefslogtreecommitdiffstats
path: root/core/java/android/view/TextureView.java
diff options
context:
space:
mode:
Diffstat (limited to 'core/java/android/view/TextureView.java')
-rw-r--r--core/java/android/view/TextureView.java20
1 files changed, 18 insertions, 2 deletions
diff --git a/core/java/android/view/TextureView.java b/core/java/android/view/TextureView.java
index 4790289..de398eb 100644
--- a/core/java/android/view/TextureView.java
+++ b/core/java/android/view/TextureView.java
@@ -67,15 +67,19 @@ import android.util.Log;
* // Something bad happened
* }
* }
- *
+ *
* public void onSurfaceTextureSizeChanged(SurfaceTexture surface, int width, int height) {
* // Ignored, Camera does all the work for us
* }
- *
+ *
* public void onSurfaceTextureDestroyed(SurfaceTexture surface) {
* mCamera.stopPreview();
* mCamera.release();
* }
+ *
+ * public void onSurfaceTextureUpdated(SurfaceTexture surface) {
+ * // Ignored
+ * }
* }
* </pre>
*
@@ -315,6 +319,10 @@ public class TextureView extends View {
mAttachInfo.mHardwareRenderer.updateTextureLayer(mLayer, getWidth(), getHeight(), mOpaque);
+ if (mListener != null) {
+ mListener.onSurfaceTextureUpdated(mSurface);
+ }
+
invalidate();
}
@@ -474,6 +482,14 @@ public class TextureView extends View {
* @param surface The surface about to be destroyed
*/
public void onSurfaceTextureDestroyed(SurfaceTexture surface);
+
+ /**
+ * Invoked when the specified {@link SurfaceTexture} is updated through
+ * {@link SurfaceTexture#updateTexImage()}.
+ *
+ * @param surface The surface just updated
+ */
+ public void onSurfaceTextureUpdated(SurfaceTexture surface);
}
private static native void nSetDefaultBufferSize(SurfaceTexture surfaceTexture,