diff options
author | John Spurlock <jspurlock@google.com> | 2015-04-03 00:00:12 -0400 |
---|---|---|
committer | John Spurlock <jspurlock@google.com> | 2015-04-03 10:23:46 -0400 |
commit | 76b52b3f9b0dde7d7800508271cf5851d92b25d5 (patch) | |
tree | 94724ba2f528b006402c2919afb6d03d31893061 /packages/SystemUI/src/com/android/systemui/volume/VolumeDialogController.java | |
parent | ad80b437f9d41815a5e865d47a26e8c4c56d5251 (diff) | |
download | frameworks_base-76b52b3f9b0dde7d7800508271cf5851d92b25d5.zip frameworks_base-76b52b3f9b0dde7d7800508271cf5851d92b25d5.tar.gz frameworks_base-76b52b3f9b0dde7d7800508271cf5851d92b25d5.tar.bz2 |
Volume: Port safety warning over to new dialog.
And remove obsolete "muted by <x>" disablement.
Bug: 19260237
Change-Id: I17dc6d5761aad9ce70cc5aad054489549113e15e
Diffstat (limited to 'packages/SystemUI/src/com/android/systemui/volume/VolumeDialogController.java')
-rw-r--r-- | packages/SystemUI/src/com/android/systemui/volume/VolumeDialogController.java | 32 |
1 files changed, 29 insertions, 3 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogController.java b/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogController.java index ae5312e..a3d9377 100644 --- a/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogController.java +++ b/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogController.java @@ -119,6 +119,10 @@ public class VolumeDialogController { mHasVibrator = mVibrator != null && mVibrator.hasVibrator(); } + public AudioManager getAudioManager() { + return mAudio; + } + public void dismiss() { mCallbacks.onDismissRequested(Events.DISMISS_REASON_VOLUME_CONTROLLER); } @@ -256,6 +260,10 @@ public class VolumeDialogController { // hook for subclasses } + private void onShowSafetyWarningW(int flags) { + mCallbacks.onShowSafetyWarning(flags); + } + private boolean checkRoutedToBluetoothW(int stream) { boolean changed = false; if (stream == AudioManager.STREAM_MUSIC) { @@ -490,7 +498,10 @@ public class VolumeDialogController { @Override public void displaySafeVolumeWarning(int flags) throws RemoteException { - // noop + if (D.BUG) Log.d(TAG, "displaySafeVolumeWarning " + + Util.audioManagerFlagsToString(flags)); + if (mDestroyed) return; + mWorker.obtainMessage(W.SHOW_SAFETY_WARNING, flags, 0).sendToTarget(); } @Override @@ -537,6 +548,7 @@ public class VolumeDialogController { private static final int SET_ACTIVE_STREAM = 11; private static final int NOTIFY_VISIBLE = 12; private static final int USER_ACTIVITY = 13; + private static final int SHOW_SAFETY_WARNING = 14; W(Looper looper) { super(looper); @@ -556,8 +568,9 @@ public class VolumeDialogController { case CONFIGURATION_CHANGED: mCallbacks.onConfigurationChanged(); break; case SET_STREAM_VOLUME: onSetStreamVolumeW(msg.arg1, msg.arg2); break; case SET_ACTIVE_STREAM: onSetActiveStreamW(msg.arg1); break; - case NOTIFY_VISIBLE: onNotifyVisibleW(msg.arg1 != 0); - case USER_ACTIVITY: onUserActivityW(); + case NOTIFY_VISIBLE: onNotifyVisibleW(msg.arg1 != 0); break; + case USER_ACTIVITY: onUserActivityW(); break; + case SHOW_SAFETY_WARNING: onShowSafetyWarningW(msg.arg1); break; } } } @@ -672,6 +685,18 @@ public class VolumeDialogController { }); } } + + @Override + public void onShowSafetyWarning(final int flags) { + for (final Map.Entry<Callbacks, Handler> entry : mCallbackMap.entrySet()) { + entry.getValue().post(new Runnable() { + @Override + public void run() { + entry.getKey().onShowSafetyWarning(flags); + } + }); + } + } } @@ -958,5 +983,6 @@ public class VolumeDialogController { void onShowVibrateHint(); void onShowSilentHint(); void onScreenOff(); + void onShowSafetyWarning(int flags); } } |