1
0
Fork 0

For #8514 - Use state list colors for default disabled states

master
ekager 2020-02-18 17:10:39 -08:00 committed by Jeff Boek
parent d41b3608ac
commit 57a02a10fc
2 changed files with 13 additions and 16 deletions

View File

@ -19,6 +19,7 @@ import androidx.navigation.fragment.findNavController
import androidx.preference.CheckBoxPreference import androidx.preference.CheckBoxPreference
import androidx.preference.EditTextPreference import androidx.preference.EditTextPreference
import androidx.preference.Preference import androidx.preference.Preference
import androidx.preference.PreferenceCategory
import androidx.preference.PreferenceFragmentCompat import androidx.preference.PreferenceFragmentCompat
import kotlinx.coroutines.Dispatchers.Main import kotlinx.coroutines.Dispatchers.Main
import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.ExperimentalCoroutinesApi
@ -159,8 +160,9 @@ class AccountSettingsFragment : PreferenceFragmentCompat() {
} }
} }
// Make sure out sync engine checkboxes are up-to-date. // Make sure out sync engine checkboxes are up-to-date and disabled if currently syncing
updateSyncEngineStates() updateSyncEngineStates()
setCwtsDisabledWhileSyncing(accountManager.isSyncActive())
val historyNameKey = getPreferenceKey(R.string.pref_key_sync_history) val historyNameKey = getPreferenceKey(R.string.pref_key_sync_history)
findPreference<CheckBoxPreference>(historyNameKey)?.apply { findPreference<CheckBoxPreference>(historyNameKey)?.apply {
@ -315,15 +317,10 @@ class AccountSettingsFragment : PreferenceFragmentCompat() {
} }
} }
private fun setEnginesDisabledWhileSyncing(isSyncing: Boolean) { private fun setCwtsDisabledWhileSyncing(isSyncing: Boolean) {
listOf( findPreference<PreferenceCategory>(
R.string.pref_key_sync_bookmarks, getPreferenceKey(R.string.preferences_sync_category)
R.string.pref_key_sync_history, )?.isEnabled = !isSyncing
R.string.pref_key_sync_logins
)
.map { getPreferenceKey(it) }
.map { findPreference<CheckBoxPreference>(it) }
.forEach { it?.isEnabled = !isSyncing }
} }
private val syncStatusObserver = object : SyncStatusObserver { private val syncStatusObserver = object : SyncStatusObserver {
@ -333,7 +330,7 @@ class AccountSettingsFragment : PreferenceFragmentCompat() {
view?.announceForAccessibility(getString(R.string.sync_syncing_in_progress)) view?.announceForAccessibility(getString(R.string.sync_syncing_in_progress))
pref?.title = getString(R.string.sync_syncing_in_progress) pref?.title = getString(R.string.sync_syncing_in_progress)
pref?.isEnabled = false pref?.isEnabled = false
setEnginesDisabledWhileSyncing(true) setCwtsDisabledWhileSyncing(true)
} }
} }
@ -350,7 +347,7 @@ class AccountSettingsFragment : PreferenceFragmentCompat() {
} }
// Make sure out sync engine checkboxes are up-to-date. // Make sure out sync engine checkboxes are up-to-date.
updateSyncEngineStates() updateSyncEngineStates()
setEnginesDisabledWhileSyncing(false) setCwtsDisabledWhileSyncing(false)
} }
} }

View File

@ -13,8 +13,8 @@
<item name="android:windowBackground">@color/foundation_normal_theme</item> <item name="android:windowBackground">@color/foundation_normal_theme</item>
<item name="android:colorEdgeEffect">@color/accent_normal_theme</item> <item name="android:colorEdgeEffect">@color/accent_normal_theme</item>
<item name="android:colorAccent">@color/primary_text_normal_theme</item> <item name="android:colorAccent">@color/primary_text_normal_theme</item>
<item name="android:textColorPrimary">@color/primary_text_normal_theme</item> <item name="android:textColorPrimary">@color/state_list_text_color</item>
<item name="android:textColorSecondary">@color/secondary_text_normal_theme</item> <item name="android:textColorSecondary">@color/secondary_state_list_text_color</item>
<item name="alertDialogStyle">@style/DialogStyleNormal</item> <item name="alertDialogStyle">@style/DialogStyleNormal</item>
<item name="alertDialogTheme">@style/DialogStyleNormal</item> <item name="alertDialogTheme">@style/DialogStyleNormal</item>
<item name="android:windowEnableSplitTouch">false</item> <item name="android:windowEnableSplitTouch">false</item>
@ -104,8 +104,8 @@
<item name="android:colorEdgeEffect">@color/accent_private_theme</item> <item name="android:colorEdgeEffect">@color/accent_private_theme</item>
<item name="android:colorAccent">@color/primary_text_private_theme</item> <item name="android:colorAccent">@color/primary_text_private_theme</item>
<item name="android:colorControlActivated">@color/accent_high_contrast_private_theme</item> <item name="android:colorControlActivated">@color/accent_high_contrast_private_theme</item>
<item name="android:textColorPrimary">@color/primary_text_private_theme</item> <item name="android:textColorPrimary">@color/state_list_text_color</item>
<item name="android:textColorSecondary">@color/secondary_text_private_theme</item> <item name="android:textColorSecondary">@color/secondary_state_list_text_color</item>
<item name="alertDialogStyle">@style/DialogStyleDark</item> <item name="alertDialogStyle">@style/DialogStyleDark</item>
<item name="alertDialogTheme">@style/DialogStyleDark</item> <item name="alertDialogTheme">@style/DialogStyleDark</item>
<item name="android:windowEnableSplitTouch">false</item> <item name="android:windowEnableSplitTouch">false</item>