summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Jacky Wang <jiannan@google.com> 2025-03-10 10:30:18 +0800
committer Jacky Wang <jiannan@google.com> 2025-03-10 10:30:18 +0800
commitd59795278345688d9d24ded7e53b529bb41ea0eb (patch)
tree3360be3270e0ad63810d4fdeb1f30f72f0b9f7d4
parent5aa8cbf35506d96211f60c7c445d46fa0f28bd1e (diff)
[Catalyst] Move getPreferenceIcon out of PreferenceMetadata
Bug: 388167106 Flag: EXEMPT refactor Test: atest Change-Id: If6d634310c4c7638b36b6c02db78cb6af7792f01
-rw-r--r--packages/SettingsLib/Graph/src/com/android/settingslib/graph/PreferenceGraphBuilder.kt1
-rw-r--r--packages/SettingsLib/Metadata/src/com/android/settingslib/metadata/PreferenceMetadata.kt13
-rw-r--r--packages/SettingsLib/Metadata/src/com/android/settingslib/metadata/Utils.kt8
-rw-r--r--packages/SettingsLib/Preference/src/com/android/settingslib/preference/PreferenceBinding.kt1
4 files changed, 10 insertions, 13 deletions
diff --git a/packages/SettingsLib/Graph/src/com/android/settingslib/graph/PreferenceGraphBuilder.kt b/packages/SettingsLib/Graph/src/com/android/settingslib/graph/PreferenceGraphBuilder.kt
index 13541b1ebc9a..009d265833b4 100644
--- a/packages/SettingsLib/Graph/src/com/android/settingslib/graph/PreferenceGraphBuilder.kt
+++ b/packages/SettingsLib/Graph/src/com/android/settingslib/graph/PreferenceGraphBuilder.kt
@@ -58,6 +58,7 @@ import com.android.settingslib.metadata.PreferenceTitleProvider
import com.android.settingslib.metadata.ReadWritePermit
import com.android.settingslib.metadata.SensitivityLevel.Companion.HIGH_SENSITIVITY
import com.android.settingslib.metadata.SensitivityLevel.Companion.UNKNOWN_SENSITIVITY
+import com.android.settingslib.metadata.getPreferenceIcon
import com.android.settingslib.preference.PreferenceScreenFactory
import com.android.settingslib.preference.PreferenceScreenProvider
import java.util.Locale
diff --git a/packages/SettingsLib/Metadata/src/com/android/settingslib/metadata/PreferenceMetadata.kt b/packages/SettingsLib/Metadata/src/com/android/settingslib/metadata/PreferenceMetadata.kt
index 84ea6d9c2f5c..0f4958bf9690 100644
--- a/packages/SettingsLib/Metadata/src/com/android/settingslib/metadata/PreferenceMetadata.kt
+++ b/packages/SettingsLib/Metadata/src/com/android/settingslib/metadata/PreferenceMetadata.kt
@@ -149,19 +149,6 @@ interface PreferenceMetadata {
this is PreferenceTitleProvider -> getTitle(context)
else -> null
}
-
- /**
- * Returns the preference icon.
- *
- * Implement [PreferenceIconProvider] interface if icon is provided dynamically (e.g. icon is
- * provided based on flag value).
- */
- fun getPreferenceIcon(context: Context): Int =
- when {
- icon != 0 -> icon
- this is PreferenceIconProvider -> getIcon(context)
- else -> 0
- }
}
/** Metadata of preference group. */
diff --git a/packages/SettingsLib/Metadata/src/com/android/settingslib/metadata/Utils.kt b/packages/SettingsLib/Metadata/src/com/android/settingslib/metadata/Utils.kt
index 67c506ba19dc..c37eaafbb121 100644
--- a/packages/SettingsLib/Metadata/src/com/android/settingslib/metadata/Utils.kt
+++ b/packages/SettingsLib/Metadata/src/com/android/settingslib/metadata/Utils.kt
@@ -25,3 +25,11 @@ fun PreferenceMetadata.getPreferenceSummary(context: Context): CharSequence? =
this is PreferenceSummaryProvider -> getSummary(context)
else -> null
}
+
+/** Returns the preference icon. */
+fun PreferenceMetadata.getPreferenceIcon(context: Context): Int =
+ when {
+ icon != 0 -> icon
+ this is PreferenceIconProvider -> getIcon(context)
+ else -> 0
+ }
diff --git a/packages/SettingsLib/Preference/src/com/android/settingslib/preference/PreferenceBinding.kt b/packages/SettingsLib/Preference/src/com/android/settingslib/preference/PreferenceBinding.kt
index 92c7ece0937a..c6a4a4dcd319 100644
--- a/packages/SettingsLib/Preference/src/com/android/settingslib/preference/PreferenceBinding.kt
+++ b/packages/SettingsLib/Preference/src/com/android/settingslib/preference/PreferenceBinding.kt
@@ -31,6 +31,7 @@ import com.android.settingslib.metadata.IntRangeValuePreference
import com.android.settingslib.metadata.PreferenceAvailabilityProvider
import com.android.settingslib.metadata.PreferenceMetadata
import com.android.settingslib.metadata.PreferenceScreenMetadata
+import com.android.settingslib.metadata.getPreferenceIcon
import com.android.settingslib.metadata.getPreferenceSummary
/** Binding of preference widget and preference metadata. */