From 843fea01d6caec06b949740453eba9ff80c9d27b Mon Sep 17 00:00:00 2001 From: Tlaster Date: Wed, 22 Apr 2020 15:24:55 +0800 Subject: [PATCH] Add androidx.preference:preference --- twidere/build.gradle | 1 + .../fragment/AccountNotificationSettingsFragment.kt | 3 ++- .../mariotaku/twidere/fragment/BasePreferenceFragment.kt | 9 ++++----- .../twidere/fragment/SettingsDetailsFragment.kt | 7 ++++--- 4 files changed, 11 insertions(+), 9 deletions(-) diff --git a/twidere/build.gradle b/twidere/build.gradle index 03d00dfcd..67af8babb 100644 --- a/twidere/build.gradle +++ b/twidere/build.gradle @@ -168,6 +168,7 @@ dependencies { implementation 'androidx.core:core:1.2.0' implementation 'androidx.drawerlayout:drawerlayout:1.1.0-alpha01' implementation 'androidx.exifinterface:exifinterface:1.1.0' + implementation "androidx.preference:preference:1.1.1" implementation 'androidx.legacy:legacy-support-core-ui:1.0.0' implementation 'androidx.multidex:multidex:2.0.1' implementation 'androidx.palette:palette:1.0.0' diff --git a/twidere/src/main/kotlin/org/mariotaku/twidere/fragment/AccountNotificationSettingsFragment.kt b/twidere/src/main/kotlin/org/mariotaku/twidere/fragment/AccountNotificationSettingsFragment.kt index e05d2de6f..9c8b16939 100644 --- a/twidere/src/main/kotlin/org/mariotaku/twidere/fragment/AccountNotificationSettingsFragment.kt +++ b/twidere/src/main/kotlin/org/mariotaku/twidere/fragment/AccountNotificationSettingsFragment.kt @@ -20,6 +20,7 @@ package org.mariotaku.twidere.fragment import android.os.Bundle +import androidx.preference.Preference import org.mariotaku.twidere.R import org.mariotaku.twidere.constant.SharedPreferenceConstants.* import org.mariotaku.twidere.preference.notification.AccountNotificationChannelsPreference @@ -38,7 +39,7 @@ class AccountNotificationSettingsFragment : BaseAccountPreferenceFragment() { override fun onActivityCreated(savedInstanceState: Bundle?) { super.onActivityCreated(savedInstanceState) val account = this.account - findPreference(KEY_NOTIFICATION_LIGHT_COLOR)?.let { + findPreference(KEY_NOTIFICATION_LIGHT_COLOR)?.let { if (account != null) { it.setDefaultValue(account.color) } diff --git a/twidere/src/main/kotlin/org/mariotaku/twidere/fragment/BasePreferenceFragment.kt b/twidere/src/main/kotlin/org/mariotaku/twidere/fragment/BasePreferenceFragment.kt index 2c6a36bdd..436b240d8 100644 --- a/twidere/src/main/kotlin/org/mariotaku/twidere/fragment/BasePreferenceFragment.kt +++ b/twidere/src/main/kotlin/org/mariotaku/twidere/fragment/BasePreferenceFragment.kt @@ -93,11 +93,10 @@ abstract class BasePreferenceFragment : PreferenceFragmentCompat(), IBaseFragmen REQUEST_PICK_RINGTONE -> { if (resultCode == Activity.RESULT_OK && data != null) { val ringtone = data.getParcelableExtra(RingtoneManager.EXTRA_RINGTONE_PICKED_URI) - if (ringtonePreferenceKey != null) { - val ringtonePreference = findPreference(ringtonePreferenceKey) as RingtonePreference? - if (ringtonePreference != null) { - ringtonePreference.value = ringtone?.toString() - } + ringtonePreferenceKey?.let { + findPreference(it) + }?.let { + it.value = ringtone?.toString() } ringtonePreferenceKey = null } diff --git a/twidere/src/main/kotlin/org/mariotaku/twidere/fragment/SettingsDetailsFragment.kt b/twidere/src/main/kotlin/org/mariotaku/twidere/fragment/SettingsDetailsFragment.kt index dab9543c9..e98208a9f 100644 --- a/twidere/src/main/kotlin/org/mariotaku/twidere/fragment/SettingsDetailsFragment.kt +++ b/twidere/src/main/kotlin/org/mariotaku/twidere/fragment/SettingsDetailsFragment.kt @@ -22,9 +22,10 @@ package org.mariotaku.twidere.fragment import android.content.SharedPreferences import android.content.SharedPreferences.OnSharedPreferenceChangeListener import android.os.Bundle -import androidx.core.view.ViewCompat -import androidx.preference.PreferenceScreen import android.view.View +import androidx.core.view.ViewCompat +import androidx.preference.Preference +import androidx.preference.PreferenceScreen import org.mariotaku.twidere.Constants.* import org.mariotaku.twidere.activity.SettingsActivity import org.mariotaku.twidere.constant.IntentConstants.EXTRA_SHOULD_TERMINATE @@ -76,7 +77,7 @@ class SettingsDetailsFragment : BasePreferenceFragment(), OnSharedPreferenceChan } override fun onSharedPreferenceChanged(preferences: SharedPreferences, key: String) { - val preference = findPreference(key) ?: return + val preference = findPreference(key) ?: return val currentActivity = activity ?: return val extras = preference.extras if (extras != null) {