From e4538e4a5161ee9a973132ad67b65cdea2e809c0 Mon Sep 17 00:00:00 2001 From: Cameron Gutman Date: Mon, 20 Feb 2023 13:22:01 -0600 Subject: [PATCH] Only remove touchscreen-trackpad option on TV devices Some VR headset devices can make use of this without a proper touchscreen --- .../limelight/preferences/StreamSettings.java | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/app/src/main/java/com/limelight/preferences/StreamSettings.java b/app/src/main/java/com/limelight/preferences/StreamSettings.java index 3dc92e05..5a1d20b0 100644 --- a/app/src/main/java/com/limelight/preferences/StreamSettings.java +++ b/app/src/main/java/com/limelight/preferences/StreamSettings.java @@ -252,17 +252,16 @@ public class StreamSettings extends Activity { PreferenceScreen screen = getPreferenceScreen(); // hide on-screen controls category on non touch screen devices - if (!getActivity().getPackageManager(). - hasSystemFeature(PackageManager.FEATURE_TOUCHSCREEN)) { - { - PreferenceCategory category = - (PreferenceCategory) findPreference("category_onscreen_controls"); - screen.removePreference(category); - } + if (!getActivity().getPackageManager().hasSystemFeature(PackageManager.FEATURE_TOUCHSCREEN)) { + PreferenceCategory category = + (PreferenceCategory) findPreference("category_onscreen_controls"); + screen.removePreference(category); - { - PreferenceCategory category = - (PreferenceCategory) findPreference("category_input_settings"); + // Perform a slightly stricter check to remove the touchscreen trackpad option. This is + // still useful for non-touch input devices that emulate touchscreens. + if (getActivity().getPackageManager().hasSystemFeature(PackageManager.FEATURE_TELEVISION) || + getActivity().getPackageManager().hasSystemFeature(PackageManager.FEATURE_LEANBACK)) { + category = (PreferenceCategory) findPreference("category_input_settings"); category.removePreference(findPreference("checkbox_touchscreen_trackpad")); } }