Add keyboard vibration settings

Introduce keyboard vibration preference settings
to control keyboard vibration state.

Bug: 289107579
Test: atest KeyboardVibrationTogglePreferenceControllerTest
Change-Id: I9cc5d53f1b22c460ad2acc7e4a412fefbca586df
This commit is contained in:
Wilson Wu
2023-08-16 10:37:56 +00:00
parent a1243188ce
commit e9eb8e65ce
7 changed files with 365 additions and 3 deletions

View File

@@ -68,8 +68,19 @@ public abstract class VibrationPreferenceConfig {
/** Play a vibration effect with intensity just selected by the user. */
public static void playVibrationPreview(Vibrator vibrator,
@VibrationAttributes.Usage int vibrationUsage) {
vibrator.vibrate(PREVIEW_VIBRATION_EFFECT,
createPreviewVibrationAttributes(vibrationUsage));
playVibrationPreview(vibrator, createPreviewVibrationAttributes(vibrationUsage));
}
/**
* Play a vibration effect with intensity just selected by the user.
*
* @param vibrator The {@link Vibrator} used to play the vibration.
* @param vibrationAttributes The {@link VibrationAttributes} to indicate the
* vibration information.
*/
public static void playVibrationPreview(Vibrator vibrator,
VibrationAttributes vibrationAttributes) {
vibrator.vibrate(PREVIEW_VIBRATION_EFFECT, vibrationAttributes);
}
public VibrationPreferenceConfig(Context context, String settingKey,
@@ -135,7 +146,7 @@ public abstract class VibrationPreferenceConfig {
return mAudioManager.getRingerModeInternal() == AudioManager.RINGER_MODE_SILENT;
}
private static VibrationAttributes createPreviewVibrationAttributes(
static VibrationAttributes createPreviewVibrationAttributes(
@VibrationAttributes.Usage int vibrationUsage) {
return new VibrationAttributes.Builder()
.setUsage(vibrationUsage)