summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author John Spurlock <jspurlock@google.com> 2014-08-01 13:10:14 -0400
committer John Spurlock <jspurlock@google.com> 2014-08-01 13:10:14 -0400
commit2d28d6e1af8aa679bc3461bcda441a57c71e3cec (patch)
treef8ba65aa793098bff961f84e4af6188e118165c6
parent487315f8815c835f1c7d9fee3a96f13a773f7396 (diff)
Volume: Confirm unsafe media volume dialog on VOL_UP.
If the confirmation dialog is showing, consider a new VOL_UP as a confirmation. Bug:16540877 Change-Id: Ibdaa43ea423cc3b48d234bcaaa0c542178657b6c
-rw-r--r--packages/SystemUI/src/com/android/systemui/volume/VolumePanel.java21
1 files changed, 21 insertions, 0 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/volume/VolumePanel.java b/packages/SystemUI/src/com/android/systemui/volume/VolumePanel.java
index 149d09a0e400..984a5f48b09d 100644
--- a/packages/SystemUI/src/com/android/systemui/volume/VolumePanel.java
+++ b/packages/SystemUI/src/com/android/systemui/volume/VolumePanel.java
@@ -45,6 +45,7 @@ import android.provider.Settings.Global;
import android.util.Log;
import android.util.SparseArray;
import android.view.Gravity;
+import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View;
@@ -249,6 +250,8 @@ public class VolumePanel extends Handler {
private final VolumePanel mVolumePanel;
private final AudioManager mAudioManager;
+ private boolean mNewVolumeUp;
+
SafetyWarning(Context context, VolumePanel volumePanel, AudioManager audioManager) {
super(context);
mContext = context;
@@ -267,6 +270,24 @@ public class VolumePanel extends Handler {
}
@Override
+ public boolean onKeyDown(int keyCode, KeyEvent event) {
+ if (keyCode == KeyEvent.KEYCODE_VOLUME_UP && event.getRepeatCount() == 0) {
+ mNewVolumeUp = true;
+ }
+ return super.onKeyDown(keyCode, event);
+ }
+
+ @Override
+ public boolean onKeyUp(int keyCode, KeyEvent event) {
+ if (keyCode == KeyEvent.KEYCODE_VOLUME_UP && mNewVolumeUp) {
+ if (LOGD) Log.d(TAG, "Confirmed warning via VOLUME_UP");
+ mAudioManager.disableSafeMediaVolume();
+ dismiss();
+ }
+ return super.onKeyUp(keyCode, event);
+ }
+
+ @Override
public void onClick(DialogInterface dialog, int which) {
mAudioManager.disableSafeMediaVolume();
}