Merge "Update Touchpad settings page to include mouse." into main

This commit is contained in:
Pat Manning
2024-07-15 10:52:10 +00:00
committed by Android (Google) Code Review
14 changed files with 178 additions and 8 deletions

View File

@@ -66,6 +66,20 @@ public class NewKeyboardSettingsUtils {
return false;
}
static boolean isMouse() {
for (int deviceId : InputDevice.getDeviceIds()) {
final InputDevice device = InputDevice.getDevice(deviceId);
if (device == null) {
continue;
}
if ((device.getSources() & InputDevice.SOURCE_MOUSE)
== InputDevice.SOURCE_MOUSE) {
return true;
}
}
return false;
}
@SuppressLint("MissingPermission")
@Nullable
static String getSelectedKeyboardLayoutLabelForUser(Context context, @UserIdInt int userId,

View File

@@ -72,7 +72,8 @@ public class TouchGesturesButtonPreferenceController extends BasePreferenceContr
@Override
public int getAvailabilityStatus() {
return AVAILABLE;
boolean isTouchpad = NewKeyboardSettingsUtils.isTouchpad();
return isTouchpad ? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
}
private void showTouchpadGestureEducation() {

View File

@@ -49,7 +49,8 @@ public class TrackpadBottomPreferenceController extends TogglePreferenceControll
@Override
public int getAvailabilityStatus() {
return AVAILABLE;
boolean isTouchpad = NewKeyboardSettingsUtils.isTouchpad();
return isTouchpad ? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
}
@Override

View File

@@ -49,7 +49,8 @@ public class TrackpadReverseScrollingPreferenceController extends TogglePreferen
@Override
public int getAvailabilityStatus() {
return AVAILABLE;
boolean isTouchpad = NewKeyboardSettingsUtils.isTouchpad();
return isTouchpad ? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
}
@Override

View File

@@ -84,6 +84,10 @@ public class TrackpadSettingsController extends BasePreferenceController
boolean isFeatureOn = FeatureFlagUtils
.isEnabled(mContext, FeatureFlagUtils.SETTINGS_NEW_KEYBOARD_TRACKPAD);
boolean isTouchpad = NewKeyboardSettingsUtils.isTouchpad();
return (isFeatureOn && isTouchpad) ? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
boolean isPointerCustomizationEnabled =
android.view.flags.Flags.enableVectorCursorA11ySettings();
boolean isMouse = NewKeyboardSettingsUtils.isMouse();
return (isFeatureOn && isTouchpad) || (isPointerCustomizationEnabled && isMouse) ? AVAILABLE
: CONDITIONALLY_UNAVAILABLE;
}
}

View File

@@ -49,7 +49,8 @@ public class TrackpadTapDraggingPreferenceController extends TogglePreferenceCon
@Override
public int getAvailabilityStatus() {
return InputSettings.isTouchpadTapDraggingFeatureFlagEnabled()
boolean isTouchpad = NewKeyboardSettingsUtils.isTouchpad();
return (InputSettings.isTouchpadTapDraggingFeatureFlagEnabled() && isTouchpad)
? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
}

View File

@@ -49,7 +49,8 @@ public class TrackpadTapToClickPreferenceController extends TogglePreferenceCont
@Override
public int getAvailabilityStatus() {
return AVAILABLE;
boolean isTouchpad = NewKeyboardSettingsUtils.isTouchpad();
return isTouchpad ? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
}
@Override