summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Luke Song <songwalker@google.com> 2017-12-13 20:11:50 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2017-12-13 20:11:50 +0000
commite9fd98ab17038a2898275ff9ae98d827f6a0f67a (patch)
treec56c60627028ad14ba76631dc3b2b0f3884b9896
parent2ff754c1f1db194ddcaf7972ecce2e4770c33b07 (diff)
parente003666fe9ee1f1770005839f0fdb6a613ceb133 (diff)
Merge "Separate volume ui and safety warning configs"
-rw-r--r--packages/SystemUI/res/values/config.xml3
-rw-r--r--packages/SystemUI/src/com/android/systemui/volume/VolumeDialogComponent.java4
-rw-r--r--packages/SystemUI/src/com/android/systemui/volume/VolumeDialogControllerImpl.java14
-rw-r--r--packages/SystemUI/src/com/android/systemui/volume/VolumeUI.java6
-rw-r--r--packages/SystemUI/tests/src/com/android/systemui/volume/VolumeDialogControllerImplTest.java1
5 files changed, 25 insertions, 3 deletions
diff --git a/packages/SystemUI/res/values/config.xml b/packages/SystemUI/res/values/config.xml
index 5e7f9c6a40e5..e313e868022d 100644
--- a/packages/SystemUI/res/values/config.xml
+++ b/packages/SystemUI/res/values/config.xml
@@ -301,6 +301,9 @@
<!-- Enable the default volume dialog -->
<bool name="enable_volume_ui">true</bool>
+ <!-- Enable the default volume level warning dialog -->
+ <bool name="enable_safety_warning">true</bool>
+
<!-- Whether to show operator name in the status bar -->
<bool name="config_showOperatorNameInStatusBar">false</bool>
diff --git a/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogComponent.java b/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogComponent.java
index 4dff9bd5c782..bc98140f5af5 100644
--- a/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogComponent.java
+++ b/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogComponent.java
@@ -134,6 +134,10 @@ public class VolumeDialogComponent implements VolumeComponent, TunerService.Tuna
mController.setVolumePolicy(mVolumePolicy);
}
+ void setEnableDialogs(boolean volumeUi, boolean safetyWarning) {
+ mController.setEnableDialogs(volumeUi, safetyWarning);
+ }
+
@Override
public void onUserActivity() {
final KeyguardViewMediator kvm = mSysui.getComponent(KeyguardViewMediator.class);
diff --git a/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogControllerImpl.java b/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogControllerImpl.java
index 275402651079..212979004c89 100644
--- a/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogControllerImpl.java
+++ b/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogControllerImpl.java
@@ -103,6 +103,8 @@ public class VolumeDialogControllerImpl implements VolumeDialogController, Dumpa
private final Vibrator mVibrator;
private final boolean mHasVibrator;
private boolean mShowA11yStream;
+ private boolean mShowVolumeDialog;
+ private boolean mShowSafetyWarning;
private boolean mDestroyed;
private VolumePolicy mVolumePolicy;
@@ -282,6 +284,11 @@ public class VolumeDialogControllerImpl implements VolumeDialogController, Dumpa
mWorker.obtainMessage(W.SET_ACTIVE_STREAM, stream, 0).sendToTarget();
}
+ public void setEnableDialogs(boolean volumeUi, boolean safetyWarning) {
+ mShowVolumeDialog = volumeUi;
+ mShowSafetyWarning = safetyWarning;
+ }
+
public void vibrate() {
if (mHasVibrator) {
mVibrator.vibrate(VIBRATE_HINT_DURATION);
@@ -311,7 +318,9 @@ public class VolumeDialogControllerImpl implements VolumeDialogController, Dumpa
}
private void onShowSafetyWarningW(int flags) {
- mCallbacks.onShowSafetyWarning(flags);
+ if (mShowSafetyWarning) {
+ mCallbacks.onShowSafetyWarning(flags);
+ }
}
private void onAccessibilityModeChanged(Boolean showA11yStream) {
@@ -343,7 +352,8 @@ public class VolumeDialogControllerImpl implements VolumeDialogController, Dumpa
&& mStatusBar.getWakefulnessState() != WakefulnessLifecycle.WAKEFULNESS_ASLEEP
&& mStatusBar.getWakefulnessState() != WakefulnessLifecycle.WAKEFULNESS_GOING_TO_SLEEP
&& mStatusBar.isDeviceInteractive()
- && (flags & AudioManager.FLAG_SHOW_UI) != 0;
+ && (flags & AudioManager.FLAG_SHOW_UI) != 0
+ && mShowVolumeDialog;
}
boolean onVolumeChangedW(int stream, int flags) {
diff --git a/packages/SystemUI/src/com/android/systemui/volume/VolumeUI.java b/packages/SystemUI/src/com/android/systemui/volume/VolumeUI.java
index 02969e483e97..6f65b081afc4 100644
--- a/packages/SystemUI/src/com/android/systemui/volume/VolumeUI.java
+++ b/packages/SystemUI/src/com/android/systemui/volume/VolumeUI.java
@@ -40,9 +40,13 @@ public class VolumeUI extends SystemUI {
@Override
public void start() {
- mEnabled = mContext.getResources().getBoolean(R.bool.enable_volume_ui);
+ boolean enableVolumeUi = mContext.getResources().getBoolean(R.bool.enable_volume_ui);
+ boolean enableSafetyWarning =
+ mContext.getResources().getBoolean(R.bool.enable_safety_warning);
+ mEnabled = enableVolumeUi || enableSafetyWarning;
if (!mEnabled) return;
mVolumeComponent = new VolumeDialogComponent(this, mContext, null);
+ mVolumeComponent.setEnableDialogs(enableVolumeUi, enableSafetyWarning);
putComponent(VolumeComponent.class, getVolumeComponent());
setDefaultVolumeController();
}
diff --git a/packages/SystemUI/tests/src/com/android/systemui/volume/VolumeDialogControllerImplTest.java b/packages/SystemUI/tests/src/com/android/systemui/volume/VolumeDialogControllerImplTest.java
index 06568f70f16c..401fd6857e76 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/volume/VolumeDialogControllerImplTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/volume/VolumeDialogControllerImplTest.java
@@ -45,6 +45,7 @@ public class VolumeDialogControllerImplTest extends SysuiTestCase {
mCallback = mock(VolumeDialogControllerImpl.C.class);
mStatusBar = mock(StatusBar.class);
mVolumeController = new TestableVolumeDialogControllerImpl(mContext, mCallback, mStatusBar);
+ mVolumeController.setEnableDialogs(true, true);
}
@Test