From ec9b023369b3d2af6986a653150ea0721c13419e Mon Sep 17 00:00:00 2001 From: althafvly Date: Fri, 15 Sep 2023 11:32:09 +0530 Subject: [PATCH] LineageParts: Remove unsupported LED features from search Change-Id: I0dd48cfa5f273f398bb6da9f590a59a37638d43a --- .../BatteryLightSettings.java | 34 ++++++++++++++++++- .../NotificationLightSettings.java | 20 +++++++++++ 2 files changed, 53 insertions(+), 1 deletion(-) diff --git a/src/org/lineageos/lineageparts/notificationlight/BatteryLightSettings.java b/src/org/lineageos/lineageparts/notificationlight/BatteryLightSettings.java index 7dc2ae89..5e1a6716 100644 --- a/src/org/lineageos/lineageparts/notificationlight/BatteryLightSettings.java +++ b/src/org/lineageos/lineageparts/notificationlight/BatteryLightSettings.java @@ -20,6 +20,7 @@ import android.content.ContentResolver; import android.content.Context; import android.content.res.Resources; import android.os.Bundle; +import android.util.ArraySet; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; @@ -31,18 +32,23 @@ import androidx.preference.PreferenceScreen; import org.lineageos.internal.notification.LightsCapabilities; import org.lineageos.lineageparts.R; import org.lineageos.lineageparts.SettingsPreferenceFragment; +import org.lineageos.lineageparts.search.BaseSearchIndexProvider; +import org.lineageos.lineageparts.search.Searchable; import lineageos.preference.LineageSystemSettingSwitchPreference; import lineageos.providers.LineageSettings; +import java.util.Set; + public class BatteryLightSettings extends SettingsPreferenceFragment implements - Preference.OnPreferenceChangeListener { + Preference.OnPreferenceChangeListener, Searchable { private static final String TAG = "BatteryLightSettings"; private static final String GENERAL_SECTION = "general_section"; private static final String COLORS_SECTION = "colors_list"; private static final String BRIGHTNESS_SECTION = "brightness_section"; + private static final String BATTERY_LIGHT_PREF = "battery_lights"; private static final String LOW_COLOR_PREF = "low_color"; private static final String MEDIUM_COLOR_PREF = "medium_color"; private static final String FULL_COLOR_PREF = "full_color"; @@ -274,4 +280,30 @@ public class BatteryLightSettings extends SettingsPreferenceFragment implements return context.getString(R.string.disabled); } }; + + public static final Searchable.SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER = + new BaseSearchIndexProvider() { + + @Override + public Set getNonIndexableKeys(Context context) { + final Set result = new ArraySet<>(); + boolean intrusiveNotificationLed = context.getResources().getBoolean( + com.android.internal.R.bool.config_intrusiveNotificationLed); + if (!intrusiveNotificationLed) { + result.add(GENERAL_SECTION); + result.add(BATTERY_LIGHT_PREF); + result.add(BRIGHTNESS_SECTION); + result.add(COLORS_SECTION); + result.add(LOW_COLOR_PREF); + result.add(MEDIUM_COLOR_PREF); + result.add(FULL_COLOR_PREF); + result.add(LIGHT_ENABLED_PREF); + result.add(PULSE_ENABLED_PREF); + result.add(BRIGHTNESS_PREFERENCE); + result.add(BRIGHTNESS_ZEN_PREFERENCE); + } + return result; + } + }; + } diff --git a/src/org/lineageos/lineageparts/notificationlight/NotificationLightSettings.java b/src/org/lineageos/lineageparts/notificationlight/NotificationLightSettings.java index 4ac000c4..820cf0b2 100644 --- a/src/org/lineageos/lineageparts/notificationlight/NotificationLightSettings.java +++ b/src/org/lineageos/lineageparts/notificationlight/NotificationLightSettings.java @@ -75,6 +75,13 @@ public class NotificationLightSettings extends SettingsPreferenceFragment implem private static final String PHONE_SECTION = "phone_list"; private static final String NOTIFICATION_LIGHT_PREF = "notification_lights"; + private static final String NOTIFICATION_LIGHT_PULSE_PREF = "notification_light_pulse"; + private static final String NOTIFICATION_LIGHT_COLOR_PREF = "notification_light_color_auto"; + private static final String NOTIFICATION_LIGHT_BRIGHTNESS_PREF = "notification_light_brightness_level"; + private static final String NOTIFICATION_LIGHT_BRIGHTNESS_ZEN_PREF = "notification_light_brightness_level_zen"; + private static final String NOTIFICATION_LIGHT_SCREEN_PREF = "notification_light_screen_on_enable"; + private static final String NOTIFICATION_LIGHT_CUSTOM_PREF = "notification_light_pulse_custom_enable"; + private static final String DEFAULT_PREF = "default"; private static final String MISSED_CALL_PREF = "missed_call"; private static final String VOICEMAIL_PREF = "voicemail"; @@ -637,7 +644,20 @@ public class NotificationLightSettings extends SettingsPreferenceFragment implem boolean intrusiveNotificationLed = context.getResources().getBoolean( com.android.internal.R.bool.config_intrusiveNotificationLed); if (!intrusiveNotificationLed) { + result.add(ADVANCED_SECTION); + result.add(APPLICATION_SECTION); + result.add(BRIGHTNESS_SECTION); + result.add(BRIGHTNESS_SECTION); + result.add(DEFAULT_PREF); + result.add(MISSED_CALL_PREF); result.add(NOTIFICATION_LIGHT_PREF); + result.add(NOTIFICATION_LIGHT_PULSE_PREF); + result.add(NOTIFICATION_LIGHT_BRIGHTNESS_PREF); + result.add(NOTIFICATION_LIGHT_BRIGHTNESS_ZEN_PREF); + result.add(NOTIFICATION_LIGHT_SCREEN_PREF); + result.add(NOTIFICATION_LIGHT_CUSTOM_PREF); + result.add(PHONE_SECTION); + result.add(VOICEMAIL_PREF); } return result; } -- GitLab