From a7822167fefd78dd230cca6b9c421736c84288dc Mon Sep 17 00:00:00 2001 From: althafvly Date: Fri, 15 Sep 2023 11:32:09 +0530 Subject: [PATCH] LineageParts: Hide notifications light in search if not supported --- .../NotificationLightSettings.java | 22 ++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/src/org/lineageos/lineageparts/notificationlight/NotificationLightSettings.java b/src/org/lineageos/lineageparts/notificationlight/NotificationLightSettings.java index 200054f9..4ac000c4 100644 --- a/src/org/lineageos/lineageparts/notificationlight/NotificationLightSettings.java +++ b/src/org/lineageos/lineageparts/notificationlight/NotificationLightSettings.java @@ -32,6 +32,7 @@ import android.os.Bundle; import android.provider.Settings; import android.telephony.TelephonyManager; import android.text.TextUtils; +import android.util.ArraySet; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; @@ -49,10 +50,13 @@ import org.lineageos.lineageparts.widget.PackageListAdapter; import org.lineageos.lineageparts.widget.PackageListAdapter.PackageItem; import org.lineageos.lineageparts.R; import org.lineageos.lineageparts.SettingsPreferenceFragment; +import org.lineageos.lineageparts.search.BaseSearchIndexProvider; +import org.lineageos.lineageparts.search.Searchable; import java.util.ArrayList; import java.util.HashMap; import java.util.List; +import java.util.Set; import java.util.Map; import lineageos.preference.LineageSystemSettingSwitchPreference; @@ -61,7 +65,7 @@ import lineageos.providers.LineageSettings; import lineageos.util.ColorUtils; public class NotificationLightSettings extends SettingsPreferenceFragment implements - Preference.OnPreferenceChangeListener, ApplicationLightPreference.ItemLongClickListener { + Preference.OnPreferenceChangeListener, ApplicationLightPreference.ItemLongClickListener, Searchable { private static final String TAG = "NotificationLightSettings"; private static final String ADVANCED_SECTION = "advanced_section"; @@ -69,6 +73,7 @@ public class NotificationLightSettings extends SettingsPreferenceFragment implem private static final String BRIGHTNESS_SECTION = "brightness_section"; private static final String GENERAL_SECTION = "general_section"; private static final String PHONE_SECTION = "phone_list"; + private static final String NOTIFICATION_LIGHT_PREF = "notification_lights"; private static final String DEFAULT_PREF = "default"; private static final String MISSED_CALL_PREF = "missed_call"; @@ -622,4 +627,19 @@ public class NotificationLightSettings extends SettingsPreferenceFragment implem 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(NOTIFICATION_LIGHT_PREF); + } + return result; + } + }; } -- GitLab