Add setting for showing the vibrate icon in status bar

Test: manual
Bug: 220144337
Change-Id: I2d389d71dd9402353b058039464495a1d33ef0e9
This commit is contained in:
Evan Laird
2022-01-10 19:44:18 +00:00
parent 67c0b83f7f
commit 4871b2cf6a
5 changed files with 60 additions and 0 deletions

View File

@@ -8470,6 +8470,9 @@
<!-- Sound: Other sounds: Title for the option enabling touch sounds. [CHAR LIMIT=30] --> <!-- Sound: Other sounds: Title for the option enabling touch sounds. [CHAR LIMIT=30] -->
<string name="touch_sounds_title">Touch sounds</string> <string name="touch_sounds_title">Touch sounds</string>
<!-- Sound: Other sounds: Title for the option enabling the vibrate icon. [CHAR LIMIT=50] -->
<string name="vibrate_icon_title">Always show icon when in vibrate mode</string>
<!-- Sound: Other sounds: Title for the option enabling dock audio media. [CHAR LIMIT=50] --> <!-- Sound: Other sounds: Title for the option enabling dock audio media. [CHAR LIMIT=50] -->
<string name="dock_audio_media_title">Dock speaker plays</string> <string name="dock_audio_media_title">Dock speaker plays</string>

View File

@@ -44,6 +44,11 @@
android:key="touch_sounds" android:key="touch_sounds"
android:title="@string/touch_sounds_title" /> android:title="@string/touch_sounds_title" />
<!-- Vibrate icon in status bar -->
<SwitchPreference
android:key="vibrate_icon"
android:title="@string/vibrate_icon_title" />
<!-- Dock speaker plays --> <!-- Dock speaker plays -->
<DropDownPreference <DropDownPreference
android:key="dock_audio_media" android:key="dock_audio_media"

View File

@@ -191,6 +191,12 @@
android:title="@string/touch_sounds_title" android:title="@string/touch_sounds_title"
android:order="-30"/> android:order="-30"/>
<!-- Show vibrate icon in status bar -->
<SwitchPreference
android:key="vibrate_icon"
android:title="@string/vibrate_icon_title"
android:order="-27"/>
<!-- Dock speaker plays --> <!-- Dock speaker plays -->
<DropDownPreference <DropDownPreference
android:key="dock_audio_media" android:key="dock_audio_media"

View File

@@ -267,12 +267,15 @@ public class SoundSettings extends DashboardFragment implements OnActivityResult
new BootSoundPreferenceController(context); new BootSoundPreferenceController(context);
final EmergencyTonePreferenceController emergencyTonePreferenceController = final EmergencyTonePreferenceController emergencyTonePreferenceController =
new EmergencyTonePreferenceController(context, fragment, lifecycle); new EmergencyTonePreferenceController(context, fragment, lifecycle);
final VibrateIconPreferenceController vibrateIconPreferenceController =
new VibrateIconPreferenceController(context, fragment, lifecycle);
controllers.add(dialPadTonePreferenceController); controllers.add(dialPadTonePreferenceController);
controllers.add(screenLockSoundPreferenceController); controllers.add(screenLockSoundPreferenceController);
controllers.add(chargingSoundPreferenceController); controllers.add(chargingSoundPreferenceController);
controllers.add(dockingSoundPreferenceController); controllers.add(dockingSoundPreferenceController);
controllers.add(touchSoundPreferenceController); controllers.add(touchSoundPreferenceController);
controllers.add(vibrateIconPreferenceController);
controllers.add(dockAudioMediaPreferenceController); controllers.add(dockAudioMediaPreferenceController);
controllers.add(bootSoundPreferenceController); controllers.add(bootSoundPreferenceController);
controllers.add(emergencyTonePreferenceController); controllers.add(emergencyTonePreferenceController);
@@ -283,6 +286,7 @@ public class SoundSettings extends DashboardFragment implements OnActivityResult
chargingSoundPreferenceController, chargingSoundPreferenceController,
dockingSoundPreferenceController, dockingSoundPreferenceController,
touchSoundPreferenceController, touchSoundPreferenceController,
vibrateIconPreferenceController,
dockAudioMediaPreferenceController, dockAudioMediaPreferenceController,
bootSoundPreferenceController, bootSoundPreferenceController,
emergencyTonePreferenceController))); emergencyTonePreferenceController)));

View File

@@ -0,0 +1,42 @@
/*
* Copyright (C) 2021 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.settings.notification;
import static com.android.settings.notification.SettingPref.TYPE_SECURE;
import android.content.Context;
import android.provider.Settings.Secure;
import com.android.settings.SettingsPreferenceFragment;
import com.android.settingslib.core.lifecycle.Lifecycle;
public class VibrateIconPreferenceController extends SettingPrefController {
private static final String KEY_VIBRATE_ICON = "vibrate_icon";
public VibrateIconPreferenceController(Context context, SettingsPreferenceFragment parent,
Lifecycle lifecycle) {
super(context, parent, lifecycle);
mPreference = new SettingPref(
TYPE_SECURE, KEY_VIBRATE_ICON, Secure.STATUS_BAR_SHOW_VIBRATE_ICON, 0 /*default off*/);
}
@Override
public boolean isAvailable() {
return true;
}
}