Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1257610b authored by Pat Manning's avatar Pat Manning
Browse files

Update Touchpad settings page to include mouse.

Make each setting conditionally available based on touchpad or mouse
connected to device.

Bug: 269100659
Test: TrackpadBottomPreferenceControllerTest
Test: TrackpadReverseScrollingPreferenceControllerTest
Test: TrackpadTapToClickPreferenceControllerTest
Test: TrackpadSettingsControllerTest
Flag: android.view.flags.enable_vector_cursor_a11y_settings
Change-Id: I601c29e20d69227779481c0a491256e36cfd268f
parent 9ff81e6b
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -39,7 +39,7 @@

    <Preference
        android:key="trackpad_settings"
        android:title="@string/trackpad_settings"
        android:title="@string/trackpad_mouse_settings"
        android:summary="@string/trackpad_settings_summary"
        android:icon="@drawable/ic_settings_trackpad"
        android:order="-254"
+1 −1
Original line number Diff line number Diff line
@@ -18,7 +18,7 @@
<PreferenceScreen
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:settings="http://schemas.android.com/apk/res-auto"
    android:title="@string/trackpad_settings">
    android:title="@string/trackpad_mouse_settings">
    <Preference
        android:key="trackpad_gesture_settings"
        android:title="@string/trackpad_touchpad_gesture_title"
+14 −0
Original line number Diff line number Diff line
@@ -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,
+2 −1
Original line number Diff line number Diff line
@@ -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() {
+2 −1
Original line number Diff line number Diff line
@@ -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
Loading