diff options
| author | 2017-12-13 20:11:50 +0000 | |
|---|---|---|
| committer | 2017-12-13 20:11:50 +0000 | |
| commit | e9fd98ab17038a2898275ff9ae98d827f6a0f67a (patch) | |
| tree | c56c60627028ad14ba76631dc3b2b0f3884b9896 | |
| parent | 2ff754c1f1db194ddcaf7972ecce2e4770c33b07 (diff) | |
| parent | e003666fe9ee1f1770005839f0fdb6a613ceb133 (diff) | |
Merge "Separate volume ui and safety warning configs"
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 |