summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packages/SystemUI/src/com/android/systemui/volume/VolumeDialogControllerImpl.java25
-rw-r--r--packages/SystemUI/src/com/android/systemui/volume/VolumeDialogImpl.java20
2 files changed, 22 insertions, 23 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogControllerImpl.java b/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogControllerImpl.java
index a97effd3a023..b360edcb8d0d 100644
--- a/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogControllerImpl.java
+++ b/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogControllerImpl.java
@@ -17,6 +17,8 @@
package com.android.systemui.volume;
import static android.media.AudioManager.RINGER_MODE_NORMAL;
+import static android.media.AudioManager.RINGER_MODE_SILENT;
+import static android.media.AudioManager.RINGER_MODE_VIBRATE;
import android.app.NotificationManager;
import android.content.BroadcastReceiver;
@@ -581,11 +583,28 @@ public class VolumeDialogControllerImpl implements VolumeDialogController, Dumpa
mState.ringerModeInternal = rm;
Events.writeEvent(mContext, Events.EVENT_INTERNAL_RINGER_MODE_CHANGED, rm);
- if (mState.ringerModeInternal == RINGER_MODE_NORMAL) {
- playTouchFeedback();
+ provideFeedback(mState.ringerModeInternal);
+ return true;
+ }
+
+ private void provideFeedback(int newRingerMode) {
+ VibrationEffect effect = null;
+ switch (newRingerMode) {
+ case RINGER_MODE_NORMAL:
+ scheduleTouchFeedback();
+ playTouchFeedback();
+ break;
+ case RINGER_MODE_SILENT:
+ effect = VibrationEffect.get(VibrationEffect.EFFECT_CLICK);
+ break;
+ case RINGER_MODE_VIBRATE:
+ default:
+ effect = VibrationEffect.get(VibrationEffect.EFFECT_DOUBLE_CLICK);
}
- return true;
+ if (effect != null) {
+ vibrate(effect);
+ }
}
private void onSetRingerModeW(int mode, boolean external) {
diff --git a/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogImpl.java b/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogImpl.java
index 6b322c72936c..2cff00c449d3 100644
--- a/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogImpl.java
+++ b/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogImpl.java
@@ -446,32 +446,12 @@ public class VolumeDialogImpl implements VolumeDialog {
}
Events.writeEvent(mContext, Events.EVENT_RINGER_TOGGLE, newRingerMode);
updateRingerH();
- provideTouchFeedbackH(newRingerMode);
mController.setRingerMode(newRingerMode, false);
maybeShowToastH(newRingerMode);
});
updateRingerH();
}
-
- private void provideTouchFeedbackH(int newRingerMode) {
- VibrationEffect effect = null;
- switch (newRingerMode) {
- case RINGER_MODE_NORMAL:
- mController.scheduleTouchFeedback();
- break;
- case RINGER_MODE_SILENT:
- effect = VibrationEffect.get(VibrationEffect.EFFECT_CLICK);
- break;
- case RINGER_MODE_VIBRATE:
- default:
- effect = VibrationEffect.get(VibrationEffect.EFFECT_DOUBLE_CLICK);
- }
- if (effect != null) {
- mController.vibrate(effect);
- }
- }
-
private void maybeShowToastH(int newRingerMode) {
int seenToastCount = Prefs.getInt(mContext, Prefs.Key.SEEN_RINGER_GUIDANCE_COUNT, 0);