kopia lustrzana https://github.com/ryukoposting/Signal-Android
Fix bad UI state when changing backup status.
rodzic
d1eab086f1
commit
e48c1bf207
|
@ -14,6 +14,11 @@ class ChatsSettingsFragment : DSLSettingsFragment(R.string.preferences_chats__ch
|
||||||
|
|
||||||
private lateinit var viewModel: ChatsSettingsViewModel
|
private lateinit var viewModel: ChatsSettingsViewModel
|
||||||
|
|
||||||
|
override fun onResume() {
|
||||||
|
super.onResume()
|
||||||
|
viewModel.refresh()
|
||||||
|
}
|
||||||
|
|
||||||
override fun bindAdapter(adapter: DSLSettingsAdapter) {
|
override fun bindAdapter(adapter: DSLSettingsAdapter) {
|
||||||
val repository = ChatsSettingsRepository()
|
val repository = ChatsSettingsRepository()
|
||||||
val factory = ChatsSettingsViewModel.Factory(repository)
|
val factory = ChatsSettingsViewModel.Factory(repository)
|
||||||
|
|
|
@ -52,6 +52,13 @@ class ChatsSettingsViewModel(private val repository: ChatsSettingsRepository) :
|
||||||
SignalStore.settings().isEnterKeySends = enabled
|
SignalStore.settings().isEnterKeySends = enabled
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun refresh() {
|
||||||
|
val backupsEnabled = SignalStore.settings().isBackupEnabled && BackupUtil.canUserAccessBackupDirectory(ApplicationDependencies.getApplication())
|
||||||
|
if (store.state.chatBackupsEnabled != backupsEnabled) {
|
||||||
|
store.update { it.copy(chatBackupsEnabled = backupsEnabled) }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
class Factory(private val repository: ChatsSettingsRepository) : ViewModelProvider.Factory {
|
class Factory(private val repository: ChatsSettingsRepository) : ViewModelProvider.Factory {
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
||||||
return requireNotNull(modelClass.cast(ChatsSettingsViewModel(repository)))
|
return requireNotNull(modelClass.cast(ChatsSettingsViewModel(repository)))
|
||||||
|
|
Ładowanie…
Reference in New Issue