Settings: Add high touch sensitivity and touchscreen hovering toggles
Co-authored-by: Bruno Martins <bgcngm@gmail.com> Change-Id: Ib8712d2d0c0fe4396dbea7c7fc130e0c253d3207
This commit is contained in:
@@ -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">Use VPN for connected devices</string>
|
||||
<string name="tethering_allow_vpn_upstreams_summary">When this device is using a VPN, all devices connected to the hotspot will use the same VPN</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>
|
||||
|
||||
@@ -211,6 +211,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"
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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) {
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user