summaryrefslogtreecommitdiffstats
path: root/packages/SystemUI/src/com/android/systemui/statusbar/VisualizerView.java
diff options
context:
space:
mode:
authorRoman Birg <roman@cyngn.com>2016-04-04 15:29:34 -0700
committerGerrit Code Review <gerrit@cyanogenmod.org>2016-04-05 08:54:20 -0700
commit779a3ebd6ee5826ba1f4bb5c303369ba49d512a6 (patch)
tree228475be69b2cadb3b99b01573c44f5639e4bfb2 /packages/SystemUI/src/com/android/systemui/statusbar/VisualizerView.java
parentedf0185326ff7eb14979f4f1f87a68c22a507b5b (diff)
downloadframeworks_base-779a3ebd6ee5826ba1f4bb5c303369ba49d512a6.zip
frameworks_base-779a3ebd6ee5826ba1f4bb5c303369ba49d512a6.tar.gz
frameworks_base-779a3ebd6ee5826ba1f4bb5c303369ba49d512a6.tar.bz2
SystemUI: show visualizer in shade-locked view
This brings back the behavior we had in 12.1 - visualizer would still be visible in the shade locked state. Also with the following improvements: * use less alpha * always attach/detach in a background thread (Async task) * use the statusbar state instead keyguard view state listener Change-Id: I6b8a57f9f0bba6ba0591de0cb1f94a0eb904cc1c Signed-off-by: Roman Birg <roman@cyngn.com>
Diffstat (limited to 'packages/SystemUI/src/com/android/systemui/statusbar/VisualizerView.java')
-rw-r--r--packages/SystemUI/src/com/android/systemui/statusbar/VisualizerView.java58
1 files changed, 26 insertions, 32 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/VisualizerView.java b/packages/SystemUI/src/com/android/systemui/statusbar/VisualizerView.java
index 40e4330..02ab3ca 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/VisualizerView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/VisualizerView.java
@@ -32,11 +32,9 @@ import android.util.Log;
import android.view.View;
import com.android.systemui.cm.UserContentObserver;
-import com.android.systemui.statusbar.policy.KeyguardMonitor;
import cyanogenmod.providers.CMSettings;
-public class VisualizerView extends View implements Palette.PaletteAsyncListener,
- KeyguardMonitor.Callback {
+public class VisualizerView extends View implements Palette.PaletteAsyncListener {
private static final String TAG = VisualizerView.class.getSimpleName();
private static final boolean DEBUG = false;
@@ -48,6 +46,7 @@ public class VisualizerView extends View implements Palette.PaletteAsyncListener
private ValueAnimator[] mValueAnimators;
private float[] mFFTPoints;
+ private int mStatusBarState;
private boolean mVisualizerEnabled = false;
private boolean mVisible = false;
private boolean mPlaying = false;
@@ -59,7 +58,6 @@ public class VisualizerView extends View implements Palette.PaletteAsyncListener
private int mColor;
private Bitmap mCurrentBitmap;
- private KeyguardMonitor mKeyguardMonitor;
private SettingsObserver mObserver;
private Visualizer.OnDataCaptureListener mVisualizerListener =
@@ -114,6 +112,13 @@ public class VisualizerView extends View implements Palette.PaletteAsyncListener
}
};
+ private final Runnable mAsyncUnlinkVisualizer = new Runnable() {
+ @Override
+ public void run() {
+ AsyncTask.execute(mUnlinkVisualizer);
+ }
+ };
+
private final Runnable mUnlinkVisualizer = new Runnable() {
@Override
public void run() {
@@ -164,23 +169,19 @@ public class VisualizerView extends View implements Palette.PaletteAsyncListener
this(context, null, 0);
}
- @Override
- public void onKeyguardChanged() {
- updateViewVisibility();
- }
-
private void updateViewVisibility() {
- setVisibility(mKeyguardMonitor != null && mKeyguardMonitor.isShowing()
- && mVisualizerEnabled ? View.VISIBLE : View.GONE);
- checkStateChanged();
+ final int curVis = getVisibility();
+ final int newVis = mStatusBarState != StatusBarState.SHADE
+ && mVisualizerEnabled ? View.VISIBLE : View.GONE;
+ if (curVis != newVis) {
+ setVisibility(newVis);
+ checkStateChanged();
+ }
}
@Override
protected void onAttachedToWindow() {
super.onAttachedToWindow();
- if (mKeyguardMonitor != null) {
- mKeyguardMonitor.addCallback(this);
- }
mObserver = new SettingsObserver(new Handler());
mObserver.observe();
mObserver.update();
@@ -189,9 +190,6 @@ public class VisualizerView extends View implements Palette.PaletteAsyncListener
@Override
protected void onDetachedFromWindow() {
super.onDetachedFromWindow();
- if (mKeyguardMonitor != null) {
- mKeyguardMonitor.removeCallback(this);
- }
mObserver.unobserve();
mObserver = null;
mCurrentBitmap = null;
@@ -223,7 +221,7 @@ public class VisualizerView extends View implements Palette.PaletteAsyncListener
@Override
public boolean hasOverlappingRendering() {
- return mVisualizerEnabled && mDisplaying;
+ return false;
}
@Override
@@ -235,16 +233,6 @@ public class VisualizerView extends View implements Palette.PaletteAsyncListener
}
}
- public void setKeyguardMonitor(KeyguardMonitor kgm) {
- mKeyguardMonitor = kgm;
- if (isAttachedToWindow()) {
- // otherwise we might never register ourselves
- mKeyguardMonitor.removeCallback(this);
- mKeyguardMonitor.addCallback(this);
- updateViewVisibility();
- }
- }
-
public void setVisible(boolean visible) {
if (mVisible != visible) {
if (DEBUG) {
@@ -295,6 +283,13 @@ public class VisualizerView extends View implements Palette.PaletteAsyncListener
}
}
+ public void setStatusBarState(int statusBarState) {
+ if (mStatusBarState != statusBarState) {
+ mStatusBarState = statusBarState;
+ updateViewVisibility();
+ }
+ }
+
public void setBitmap(Bitmap bitmap) {
if (mCurrentBitmap == bitmap) {
return;
@@ -365,13 +360,12 @@ public class VisualizerView extends View implements Palette.PaletteAsyncListener
if (mVisible) {
animate()
.alpha(0f)
- .withEndAction(mUnlinkVisualizer)
+ .withEndAction(mAsyncUnlinkVisualizer)
.setDuration(600);
} else {
- AsyncTask.execute(mUnlinkVisualizer);
animate().
alpha(0f)
- .withEndAction(null)
+ .withEndAction(mAsyncUnlinkVisualizer)
.setDuration(0);
}
}