summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarco Nelissen <marcone@google.com>2011-10-11 15:40:47 -0700
committerMarco Nelissen <marcone@google.com>2011-10-13 14:54:28 -0700
commitce631a529b74ae79acc0d37da34a5ce8722fbc8c (patch)
tree898e5a8e0110b457acecdb217c25d0967a1b975f
parentc41a4fc7026ceb6567935abe221340cc4d6b7b73 (diff)
downloadandroid_packages_wallpapers_MagicSmoke-ce631a529b74ae79acc0d37da34a5ce8722fbc8c.tar.gz
android_packages_wallpapers_MagicSmoke-ce631a529b74ae79acc0d37da34a5ce8722fbc8c.tar.bz2
android_packages_wallpapers_MagicSmoke-ce631a529b74ae79acc0d37da34a5ce8722fbc8c.zip
Apply settings immediately, like other wallpapers.
Don't have an explicit "OK" button to apply the current preset, but just apply it immediately, like other wallpapers with settings do. Also use a different default setting that is more in line with the overall ICS theme, and update the thumbnail accordingly. b/5288769 Change-Id: Ibe35b74c3d5c9ad35708b98007d9bb0a396a25c2
-rw-r--r--res/drawable/magicsmoke_thumb.pngbin26811 -> 18483 bytes
-rw-r--r--res/layout/selector.xml9
-rw-r--r--src/com/android/magicsmoke/MagicSmokeRS.java23
-rw-r--r--src/com/android/magicsmoke/MagicSmokeSelector.java6
-rw-r--r--src/com/android/magicsmoke/RenderScriptScene.java5
-rw-r--r--src/com/android/magicsmoke/RenderScriptWallpaper.java4
6 files changed, 21 insertions, 26 deletions
diff --git a/res/drawable/magicsmoke_thumb.png b/res/drawable/magicsmoke_thumb.png
index 8c937b8..0349547 100644
--- a/res/drawable/magicsmoke_thumb.png
+++ b/res/drawable/magicsmoke_thumb.png
Binary files differ
diff --git a/res/layout/selector.xml b/res/layout/selector.xml
index 9b6b22f..304d305 100644
--- a/res/layout/selector.xml
+++ b/res/layout/selector.xml
@@ -31,13 +31,4 @@
android:background="#40000000"
/>
- <Button
- android:layout_width="160dip"
- android:layout_height="wrap_content"
- android:text="@string/ok"
- android:onClick="setLiveWallpaper"
- android:layout_alignParentBottom="true"
- android:layout_centerHorizontal="true"
- />
-
</RelativeLayout>
diff --git a/src/com/android/magicsmoke/MagicSmokeRS.java b/src/com/android/magicsmoke/MagicSmokeRS.java
index 201aacd..50c3b2e 100644
--- a/src/com/android/magicsmoke/MagicSmokeRS.java
+++ b/src/com/android/magicsmoke/MagicSmokeRS.java
@@ -29,7 +29,6 @@ import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.media.MediaPlayer;
import android.os.Handler;
-import android.renderscript.Mesh.Primitive;
import android.renderscript.*;
import android.renderscript.Element.Builder;
import android.renderscript.ProgramStore.BlendDstFunc;
@@ -116,7 +115,7 @@ class MagicSmokeRS extends RenderScriptScene implements OnSharedPreferenceChange
public boolean mPreMul;
}
- public static final int DEFAULT_PRESET = 4;
+ public static final int DEFAULT_PRESET = 16;
public static final Preset [] mPreset = new Preset[] {
// proc back low high alph mask rot swap premul
new Preset(1, 0x000000, 0x000000, 0xffffff, 2.0f, 0x0f, true, false, false),
@@ -149,12 +148,19 @@ class MagicSmokeRS extends RenderScriptScene implements OnSharedPreferenceChange
mHeight = height;
mContext = context;
mSharedPref = mContext.getSharedPreferences("magicsmoke", Context.MODE_PRIVATE);
+ mSharedPref.registerOnSharedPreferenceChangeListener(this);
makeNewState();
}
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
- makeNewState();
+ if (!mIsStarted) {
+ start();
+ mRS.finish();
+ stop(false);
+ } else {
+ makeNewState();
+ }
}
void makeNewState() {
@@ -236,16 +242,17 @@ class MagicSmokeRS extends RenderScriptScene implements OnSharedPreferenceChange
}
@Override
- public void stop() {
- mSharedPref.unregisterOnSharedPreferenceChangeListener(this);
- super.stop();
+ public void stop(boolean forReal) {
+ if (forReal) {
+ mSharedPref.unregisterOnSharedPreferenceChangeListener(this);
+ }
+ super.stop(forReal);
}
@Override
public void start() {
- super.start();
- mSharedPref.registerOnSharedPreferenceChangeListener(this);
makeNewState();
+ super.start();
}
float alphafactor;
diff --git a/src/com/android/magicsmoke/MagicSmokeSelector.java b/src/com/android/magicsmoke/MagicSmokeSelector.java
index 55addf6..22c7675 100644
--- a/src/com/android/magicsmoke/MagicSmokeSelector.java
+++ b/src/com/android/magicsmoke/MagicSmokeSelector.java
@@ -73,12 +73,6 @@ public class MagicSmokeSelector extends Activity {
}
}
- // button hook
- public void setLiveWallpaper(View v) {
- finish();
- }
-
-
@Override
public void onResume() {
super.onResume();
diff --git a/src/com/android/magicsmoke/RenderScriptScene.java b/src/com/android/magicsmoke/RenderScriptScene.java
index fdf4935..fbab205 100644
--- a/src/com/android/magicsmoke/RenderScriptScene.java
+++ b/src/com/android/magicsmoke/RenderScriptScene.java
@@ -27,6 +27,7 @@ public abstract class RenderScriptScene {
protected int mWidth;
protected int mHeight;
protected boolean mPreview;
+ protected boolean mIsStarted;
protected Resources mResources;
protected RenderScriptGL mRS;
protected ScriptC mScript;
@@ -69,12 +70,14 @@ public abstract class RenderScriptScene {
protected abstract ScriptC createScript();
- public void stop() {
+ public void stop(boolean forReal) {
mRS.bindRootScript(null);
+ mIsStarted = false;
}
public void start() {
mRS.bindRootScript(mScript);
+ mIsStarted = true;
}
public void resize(int width, int height) {
diff --git a/src/com/android/magicsmoke/RenderScriptWallpaper.java b/src/com/android/magicsmoke/RenderScriptWallpaper.java
index c9bbdd9..c0bf50d 100644
--- a/src/com/android/magicsmoke/RenderScriptWallpaper.java
+++ b/src/com/android/magicsmoke/RenderScriptWallpaper.java
@@ -54,7 +54,7 @@ public abstract class RenderScriptWallpaper<T extends RenderScriptScene> extends
private void destroyRenderer() {
if (mRenderer != null) {
- mRenderer.stop();
+ mRenderer.stop(true);
mRenderer = null;
}
if (mRs != null) {
@@ -70,7 +70,7 @@ public abstract class RenderScriptWallpaper<T extends RenderScriptScene> extends
if (visible) {
mRenderer.start();
} else {
- mRenderer.stop();
+ mRenderer.stop(false);
}
}
}