summaryrefslogtreecommitdiffstats
path: root/libs/rs/java/Film
diff options
context:
space:
mode:
authorJason Sams <rjsams@android.com>2009-11-17 17:52:43 -0800
committerJason Sams <rjsams@android.com>2009-11-17 18:51:58 -0800
commitd10824dadc658e20ed85cd47fe4364b659a7fe2a (patch)
tree467c4d2be70439db0bd0978830391979874d3bc0 /libs/rs/java/Film
parent948415fdd9bfee77aa46deae76f8602788befe6d (diff)
downloadframeworks_base-d10824dadc658e20ed85cd47fe4364b659a7fe2a.zip
frameworks_base-d10824dadc658e20ed85cd47fe4364b659a7fe2a.tar.gz
frameworks_base-d10824dadc658e20ed85cd47fe4364b659a7fe2a.tar.bz2
Fix film init
Diffstat (limited to 'libs/rs/java/Film')
-rw-r--r--libs/rs/java/Film/src/com/android/film/FilmView.java18
1 files changed, 14 insertions, 4 deletions
diff --git a/libs/rs/java/Film/src/com/android/film/FilmView.java b/libs/rs/java/Film/src/com/android/film/FilmView.java
index 1c5b2bc..e40784c 100644
--- a/libs/rs/java/Film/src/com/android/film/FilmView.java
+++ b/libs/rs/java/Film/src/com/android/film/FilmView.java
@@ -42,19 +42,29 @@ public class FilmView extends RSSurfaceView {
public FilmView(Context context) {
super(context);
-
//setFocusable(true);
}
private RenderScript mRS;
private FilmRS mRender;
+
public void surfaceChanged(SurfaceHolder holder, int format, int w, int h) {
super.surfaceChanged(holder, format, w, h);
+ if (mRS == null) {
+ mRS = createRenderScript(false);
+ mRS.contextSetSurface(w, h, holder.getSurface());
+ mRender = new FilmRS();
+ mRender.init(mRS, getResources(), w, h);
+ }
+ }
- mRS = createRenderScript(true);
- mRender = new FilmRS();
- mRender.init(mRS, getResources(), w, h);
+ @Override
+ protected void onDetachedFromWindow() {
+ if(mRS != null) {
+ mRS = null;
+ destroyRenderScript();
+ }
}
@Override