diff options
Diffstat (limited to 'src/com/android/magicsmoke/RenderScriptWallpaper.java')
-rw-r--r-- | src/com/android/magicsmoke/RenderScriptWallpaper.java | 34 |
1 files changed, 15 insertions, 19 deletions
diff --git a/src/com/android/magicsmoke/RenderScriptWallpaper.java b/src/com/android/magicsmoke/RenderScriptWallpaper.java index b4359e2..c9bbdd9 100644 --- a/src/com/android/magicsmoke/RenderScriptWallpaper.java +++ b/src/com/android/magicsmoke/RenderScriptWallpaper.java @@ -18,6 +18,7 @@ package com.android.magicsmoke; import android.service.wallpaper.WallpaperService; +import android.os.Bundle; import android.graphics.PixelFormat; import android.renderscript.RenderScriptGL; import android.renderscript.RenderScript; @@ -40,9 +41,9 @@ public abstract class RenderScriptWallpaper<T extends RenderScriptScene> extends @Override public void onCreate(SurfaceHolder surfaceHolder) { super.onCreate(surfaceHolder); - setTouchEventsEnabled(true); + setTouchEventsEnabled(false); surfaceHolder.setSizeFromLayout(); - surfaceHolder.setFormat(PixelFormat.RGBX_8888); + surfaceHolder.setFormat(PixelFormat.RGB_565); } @Override @@ -78,7 +79,7 @@ public abstract class RenderScriptWallpaper<T extends RenderScriptScene> extends public void onSurfaceChanged(SurfaceHolder holder, int format, int width, int height) { super.onSurfaceChanged(holder, format, width, height); if (mRs != null) { - mRs.contextSetSurface(width, height, holder.getSurface()); + mRs.setSurface(holder, width, height); } if (mRenderer == null) { mRenderer = createScene(width, height); @@ -90,30 +91,18 @@ public abstract class RenderScriptWallpaper<T extends RenderScriptScene> extends } @Override - public void onTouchEvent(MotionEvent event) { - if (mRenderer != null) { - mRenderer.onTouchEvent(event); - } - } - - @Override public void onOffsetsChanged(float xOffset, float yOffset, float xStep, float yStep, int xPixels, int yPixels) { - if (mRenderer != null) { - mRenderer.setOffset(xOffset, yOffset, xStep, yStep, xPixels, yPixels); - } + mRenderer.setOffset(xOffset, yOffset, xStep, yStep, xPixels, yPixels); } @Override public void onSurfaceCreated(SurfaceHolder holder) { super.onSurfaceCreated(holder); - Surface surface = null; - while (surface == null) { - surface = holder.getSurface(); - } - mRs = new RenderScriptGL(false, false); - mRs.contextSetPriority(RenderScript.Priority.LOW); + RenderScriptGL.SurfaceConfig sc = new RenderScriptGL.SurfaceConfig(); + mRs = new RenderScriptGL(RenderScriptWallpaper.this, sc); + mRs.setPriority(RenderScript.Priority.LOW); } @Override @@ -121,5 +110,12 @@ public abstract class RenderScriptWallpaper<T extends RenderScriptScene> extends super.onSurfaceDestroyed(holder); destroyRenderer(); } + + @Override + public Bundle onCommand(String action, int x, int y, int z, + Bundle extras, boolean resultRequested) { + return mRenderer.onCommand(action, x, y, z, extras, resultRequested); + } + } } |