diff --git a/src/com/android/settings/accessibility/KeyboardVibrationTogglePreferenceController.java b/src/com/android/settings/accessibility/KeyboardVibrationTogglePreferenceController.java index 869443c5fae..58aa0cc45f5 100644 --- a/src/com/android/settings/accessibility/KeyboardVibrationTogglePreferenceController.java +++ b/src/com/android/settings/accessibility/KeyboardVibrationTogglePreferenceController.java @@ -47,7 +47,7 @@ import com.android.settingslib.core.instrumentation.MetricsFeatureProvider; /** - * A preference controller to turn on/off keyboard vibration state with a single toggle. + * A preference controller to turn on/off keyboard vibration state with a single toggle. */ public class KeyboardVibrationTogglePreferenceController extends TogglePreferenceController implements DefaultLifecycleObserver { @@ -110,7 +110,9 @@ public class KeyboardVibrationTogglePreferenceController extends TogglePreferenc @Override public int getAvailabilityStatus() { if (Flags.keyboardCategoryEnabled() - && mContext.getResources().getBoolean(R.bool.config_keyboard_vibration_supported)) { + && mContext.getResources().getBoolean(R.bool.config_keyboard_vibration_supported) + && mContext.getResources().getFloat( + com.android.internal.R.dimen.config_keyboardHapticFeedbackFixedAmplitude) > 0) { return AVAILABLE; } return UNSUPPORTED_ON_DEVICE; diff --git a/tests/robotests/src/com/android/settings/accessibility/KeyboardVibrationTogglePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/accessibility/KeyboardVibrationTogglePreferenceControllerTest.java index cf12e341337..2d5905e8de8 100644 --- a/tests/robotests/src/com/android/settings/accessibility/KeyboardVibrationTogglePreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/accessibility/KeyboardVibrationTogglePreferenceControllerTest.java @@ -84,6 +84,9 @@ public class KeyboardVibrationTogglePreferenceControllerTest { public void getAvailabilityStatus_featureSupported_available() { mSetFlagsRule.enableFlags(Flags.FLAG_KEYBOARD_CATEGORY_ENABLED); when(mResources.getBoolean(R.bool.config_keyboard_vibration_supported)).thenReturn(true); + when(mResources.getFloat( + com.android.internal.R.dimen.config_keyboardHapticFeedbackFixedAmplitude)) + .thenReturn(0.8f); assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE); }