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

Commit 8f511ca4 authored by LuK1337's avatar LuK1337 Committed by Michael Bestas
Browse files

Settings: Add high touch sensitivity and touchscreen hovering toggles

Author: Bruno Martins <bgcngm@gmail.com>
Date:   Tue Mar 26 00:06:11 2019 +0000

    DisplaySettings: Hide high touch sensitivity from search if needed

     * Fixes: https://gitlab.com/LineageOS/issues/android/issues/260

    Change-Id: I98ce66dec9801c36da5a2facd6b033895b7963f0

Author: Bruno Martins <bgcngm@gmail.com>
Date:   Tue Mar 26 00:20:37 2019 +0000

    LanguageAndInputSettings: Hide touch hovering from search if needed

    Change-Id: I5d53946262919ff67be5e777654af2171ffd2a44

Change-Id: Ib8712d2d0c0fe4396dbea7c7fc130e0c253d3207
parent 792804c8
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -42,6 +42,10 @@
    <string name="security_settings_fingerprint_sensor_location_left">left side</string>
    <string name="security_settings_fingerprint_sensor_location_right">right side</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>

    <!-- Hostname setting -->
    <string name="device_hostname">Device hostname</string>

@@ -49,6 +53,10 @@
    <string name="proximity_wake_title">Prevent accidental wake-up</string>
    <string name="proximity_wake_summary">Check the proximity sensor prior to waking up screen</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>

    <!-- 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>
+7 −0
Original line number Diff line number Diff line
@@ -167,6 +167,13 @@
        android:summary="@string/wake_when_plugged_or_unplugged_summary"
      android:defaultValue="@*android:bool/config_unplugTurnsOnScreen" />

    <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"
        lineage: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
@@ -18,6 +18,7 @@
<PreferenceScreen
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:settings="http://schemas.android.com/apk/res-auto"
    xmlns:lineage="http://schemas.android.com/apk/res/lineageos.platform"
    android:title="@string/language_settings"
    settings:initialExpandedChildrenCount="3">

@@ -83,6 +84,13 @@
            android:fragment="com.android.settings.tts.TextToSpeechSettings"
            settings:searchable="false"/>

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

    </PreferenceCategory>

    <SwitchPreference
+8 −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;

@@ -47,6 +49,7 @@ public class DisplaySettings extends DashboardFragment {
    public static final String KEY_PROXIMITY_ON_WAKE = "proximity_on_wake";

    private static final String KEY_SCREEN_TIMEOUT = "screen_timeout";
    private static final String KEY_HIGH_TOUCH_SENSITIVITY = "high_touch_sensitivity_enable";

    @Override
    public int getMetricsCategory() {
@@ -101,10 +104,15 @@ public class DisplaySettings extends DashboardFragment {
                @Override
                public List<String> getNonIndexableKeys(Context context) {
                    List<String> keys = super.getNonIndexableKeys(context);
                    LineageHardwareManager hardware = LineageHardwareManager.getInstance(context);
                    if (!context.getResources().getBoolean(
                            org.lineageos.platform.internal.R.bool.config_proximityCheckOnWake)) {
                        keys.add(KEY_PROXIMITY_ON_WAKE);
                    }
                    if (!hardware.isSupported(
                            LineageHardwareManager.FEATURE_HIGH_TOUCH_SENSITIVITY)) {
                        keys.add(KEY_HIGH_TOUCH_SENSITIVITY);
                    }
                    return keys;
                }

+13 −0
Original line number Diff line number Diff line
@@ -34,6 +34,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;
@@ -46,6 +48,7 @@ public class LanguageAndInputSettings extends DashboardFragment {
    private static final String KEY_KEYBOARDS_CATEGORY = "keyboards_category";
    private static final String KEY_TEXT_TO_SPEECH = "tts_settings_summary";
    private static final String KEY_POINTER_AND_TTS_CATEGORY = "pointer_and_tts_category";
    private static final String KEY_TOUCH_HOVERING = "feature_touch_hovering";

    @Override
    public int getMetricsCategory() {
@@ -117,6 +120,16 @@ public class LanguageAndInputSettings extends DashboardFragment {
    public static final BaseSearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
            new BaseSearchIndexProvider(R.xml.language_and_input) {

                @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;
                }

                @Override
                public List<AbstractPreferenceController> createPreferenceControllers(
                        Context context) {