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

Unverified Commit 3388d86c authored by LuK1337's avatar LuK1337 Committed by Michael Bestas
Browse files

Settings: Add high touch sensitivity and touchscreen hovering toggles



Co-authored-by: default avatarBruno Martins <bgcngm@gmail.com>
Change-Id: Ib8712d2d0c0fe4396dbea7c7fc130e0c253d3207
parent 63aefbf5
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -40,6 +40,10 @@
    <string name="status_bar_double_tap_to_sleep_title">Tap to sleep</string>
    <string name="status_bar_double_tap_to_sleep_summary">Double-tap on the status bar or lockscreen to turn off the display</string>

    <!-- High touch sensitivity -->
    <string name="high_touch_sensitivity_title">High touch sensitivity</string>
    <string name="high_touch_sensitivity_summary">Increase touchscreen sensitivity so it can be used while wearing gloves</string>

    <!-- Hotspot extras -->
    <string name="tethering_allow_vpn_upstreams_title">Allow clients to use VPNs</string>
    <string name="tethering_allow_vpn_upstreams_summary">Permit hotspot clients to use this device\u2019s VPN connections for upstream connectivity</string>
@@ -77,4 +81,8 @@
    <!-- Touchscreen gesture settings -->
    <string name="touchscreen_gesture_settings_title">Touchscreen gestures</string>
    <string name="touchscreen_gesture_settings_summary">Perform various touchscreen gestures for quick actions</string>

    <!-- Touchscreen hovering -->
    <string name="touchscreen_hovering_title">Touchscreen hovering</string>
    <string name="touchscreen_hovering_summary">Allows you to hover the screen like a mouse in web browsers, remote desktops, etc</string>
</resources>
+7 −0
Original line number Diff line number Diff line
@@ -210,6 +210,13 @@
            android:defaultValue="@*lineageos.platform:bool/config_dt2sGestureEnabledByDefault"
            settings:requiresConfig="@*lineageos.platform:bool/config_dt2sGestureAvailable" />

        <lineageos.preference.LineageSystemSettingSwitchPreference
            android:key="high_touch_sensitivity_enable"
            android:title="@string/high_touch_sensitivity_title"
            android:summary="@string/high_touch_sensitivity_summary"
            android:defaultValue="false"
            settings:requiresFeature="lineagehardware:FEATURE_HIGH_TOUCH_SENSITIVITY" />

        <ListPreference
            android:key="theme"
            android:title="@string/device_theme"
+8 −0
Original line number Diff line number Diff line
@@ -61,6 +61,14 @@
            android:key="pointer_speed"
            android:title="@string/pointer_speed"
            android:dialogTitle="@string/pointer_speed" />

        <lineageos.preference.LineageSecureSettingSwitchPreference
            android:key="feature_touch_hovering"
            android:title="@string/touchscreen_hovering_title"
            android:summary="@string/touchscreen_hovering_summary"
            android:defaultValue="false"
            settings:requiresFeature="lineagehardware:FEATURE_TOUCH_HOVERING" />

    </PreferenceCategory>

    <SwitchPreferenceCompat
+15 −0
Original line number Diff line number Diff line
@@ -37,6 +37,8 @@ import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.search.SearchIndexable;

import lineageos.hardware.LineageHardwareManager;

import java.util.ArrayList;
import java.util.List;

@@ -44,6 +46,8 @@ import java.util.List;
public class DisplaySettings extends DashboardFragment {
    private static final String TAG = "DisplaySettings";

    private static final String KEY_HIGH_TOUCH_SENSITIVITY = "high_touch_sensitivity_enable";

    @Override
    public int getMetricsCategory() {
        return SettingsEnums.DISPLAY;
@@ -90,6 +94,17 @@ public class DisplaySettings extends DashboardFragment {
    public static final BaseSearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
            new BaseSearchIndexProvider(R.xml.display_settings) {

                @Override
                public List<String> getNonIndexableKeys(Context context) {
                    List<String> keys = super.getNonIndexableKeys(context);
                    LineageHardwareManager hardware = LineageHardwareManager.getInstance(context);
                    if (!hardware.isSupported(
                            LineageHardwareManager.FEATURE_HIGH_TOUCH_SENSITIVITY)) {
                        keys.add(KEY_HIGH_TOUCH_SENSITIVITY);
                    }
                    return keys;
                }

                @Override
                public List<AbstractPreferenceController> createPreferenceControllers(
                        Context context) {
+14 −1
Original line number Diff line number Diff line
@@ -36,6 +36,8 @@ import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.search.SearchIndexable;

import lineageos.hardware.LineageHardwareManager;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
@@ -47,6 +49,7 @@ public class KeyboardSettings extends DashboardFragment {

    private static final String KEY_KEYBOARDS_CATEGORY = "keyboards_category";
    private static final String KEY_POINTER_CATEGORY = "pointer_category";
    private static final String KEY_TOUCH_HOVERING = "feature_touch_hovering";

    @Override
    public int getMetricsCategory() {
@@ -110,5 +113,15 @@ public class KeyboardSettings extends DashboardFragment {
    }

    public static final BaseSearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
            new BaseSearchIndexProvider(R.xml.keyboard_settings);
            new BaseSearchIndexProvider(R.xml.keyboard_settings) {
                @Override
                public List<String> getNonIndexableKeys(Context context) {
                    List<String> keys = super.getNonIndexableKeys(context);
                    LineageHardwareManager hardware = LineageHardwareManager.getInstance(context);
                    if (!hardware.isSupported(LineageHardwareManager.FEATURE_TOUCH_HOVERING)) {
                        keys.add(KEY_TOUCH_HOVERING);
                    }
                    return keys;
                }
            };
}
 No newline at end of file