diff options
author | 2025-03-10 10:21:51 +0800 | |
---|---|---|
committer | 2025-03-10 10:27:00 +0800 | |
commit | 5aa8cbf35506d96211f60c7c445d46fa0f28bd1e (patch) | |
tree | 0a243109e43764b524a36f3363b56a741f8a782a | |
parent | d33d3f8d140ae0d59155d4055c70252f5f33a604 (diff) |
[Catalyst] Move getPreferenceSummary out of PreferenceMetadata
PreferenceMetadata.getPreferenceSummary is implementation detail.
Bug: 388167106
Flag: EXEMPT refactor
Test: atest
Change-Id: If6726f0b4420eafa7107e6bf2710163faf4b72ff
3 files changed, 28 insertions, 13 deletions
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 7f2a61081fbb..84ea6d9c2f5c 100644 --- a/packages/SettingsLib/Metadata/src/com/android/settingslib/metadata/PreferenceMetadata.kt +++ b/packages/SettingsLib/Metadata/src/com/android/settingslib/metadata/PreferenceMetadata.kt @@ -151,19 +151,6 @@ interface PreferenceMetadata { } /** - * Returns the preference summary. - * - * Implement [PreferenceSummaryProvider] interface if summary content is generated dynamically - * (e.g. summary is provided per preference value). - */ - fun getPreferenceSummary(context: Context): CharSequence? = - when { - summary != 0 -> context.getText(summary) - this is PreferenceSummaryProvider -> getSummary(context) - else -> null - } - - /** * Returns the preference icon. * * Implement [PreferenceIconProvider] interface if icon is provided dynamically (e.g. icon is diff --git a/packages/SettingsLib/Metadata/src/com/android/settingslib/metadata/Utils.kt b/packages/SettingsLib/Metadata/src/com/android/settingslib/metadata/Utils.kt new file mode 100644 index 000000000000..67c506ba19dc --- /dev/null +++ b/packages/SettingsLib/Metadata/src/com/android/settingslib/metadata/Utils.kt @@ -0,0 +1,27 @@ +/* + * Copyright (C) 2025 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.settingslib.metadata + +import android.content.Context + +/** Returns the preference summary. */ +fun PreferenceMetadata.getPreferenceSummary(context: Context): CharSequence? = + when { + summary != 0 -> context.getText(summary) + this is PreferenceSummaryProvider -> getSummary(context) + else -> null + } 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 18fd7a8be270..92c7ece0937a 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.getPreferenceSummary /** Binding of preference widget and preference metadata. */ interface PreferenceBinding { |