diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/chats/ChatsSettingsFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/chats/ChatsSettingsFragment.kt index 53925dbe45..d4914134b9 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/chats/ChatsSettingsFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/chats/ChatsSettingsFragment.kt @@ -1,15 +1,12 @@ package org.thoughtcrime.securesms.components.settings.app.chats -import androidx.activity.result.ActivityResultLauncher import androidx.lifecycle.ViewModelProvider import androidx.navigation.Navigation import androidx.navigation.fragment.findNavController import org.thoughtcrime.securesms.R -import org.thoughtcrime.securesms.backup.v2.MessageBackupTier import org.thoughtcrime.securesms.components.settings.DSLConfiguration import org.thoughtcrime.securesms.components.settings.DSLSettingsFragment import org.thoughtcrime.securesms.components.settings.DSLSettingsText -import org.thoughtcrime.securesms.components.settings.app.subscription.MessageBackupsCheckoutLauncher.createBackupsCheckoutLauncher import org.thoughtcrime.securesms.components.settings.configure import org.thoughtcrime.securesms.util.RemoteConfig import org.thoughtcrime.securesms.util.adapter.mapping.MappingAdapter @@ -18,7 +15,6 @@ import org.thoughtcrime.securesms.util.navigation.safeNavigate class ChatsSettingsFragment : DSLSettingsFragment(R.string.preferences_chats__chats) { private lateinit var viewModel: ChatsSettingsViewModel - private lateinit var checkoutLauncher: ActivityResultLauncher override fun onResume() { super.onResume() @@ -27,10 +23,6 @@ class ChatsSettingsFragment : DSLSettingsFragment(R.string.preferences_chats__ch @Suppress("ReplaceGetOrSet") override fun bindAdapter(adapter: MappingAdapter) { - checkoutLauncher = createBackupsCheckoutLauncher { - findNavController().safeNavigate(ChatsSettingsFragmentDirections.actionChatsSettingsFragmentToRemoteBackupsSettingsFragment().setBackupLaterSelected(it)) - } - viewModel = ViewModelProvider(this).get(ChatsSettingsViewModel::class.java) viewModel.state.observe(viewLifecycleOwner) { @@ -87,31 +79,19 @@ class ChatsSettingsFragment : DSLSettingsFragment(R.string.preferences_chats__ch } ) - dividerPref() + if (!RemoteConfig.messageBackups) { + dividerPref() - sectionHeaderPref(R.string.preferences_chats__backups) + sectionHeaderPref(R.string.preferences_chats__backups) - if (RemoteConfig.messageBackups || state.canAccessRemoteBackupsSettings) { clickPref( - title = DSLSettingsText.from(R.string.RemoteBackupsSettingsFragment__signal_backups), - summary = DSLSettingsText.from(if (state.canAccessRemoteBackupsSettings) R.string.arrays__enabled else R.string.arrays__disabled), + title = DSLSettingsText.from(R.string.preferences_chats__chat_backups), + summary = DSLSettingsText.from(if (state.localBackupsEnabled) R.string.arrays__enabled else R.string.arrays__disabled), onClick = { - if (state.canAccessRemoteBackupsSettings) { - Navigation.findNavController(requireView()).safeNavigate(R.id.action_chatsSettingsFragment_to_remoteBackupsSettingsFragment) - } else { - checkoutLauncher.launch(null) - } + Navigation.findNavController(requireView()).safeNavigate(R.id.action_chatsSettingsFragment_to_backupsPreferenceFragment) } ) } - - clickPref( - title = DSLSettingsText.from(R.string.preferences_chats__chat_backups), - summary = DSLSettingsText.from(if (state.localBackupsEnabled) R.string.arrays__enabled else R.string.arrays__disabled), - onClick = { - Navigation.findNavController(requireView()).safeNavigate(R.id.action_chatsSettingsFragment_to_backupsPreferenceFragment) - } - ) } } } diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/chats/ChatsSettingsState.kt b/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/chats/ChatsSettingsState.kt index 27ef9e4fa0..ed174592c2 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/chats/ChatsSettingsState.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/chats/ChatsSettingsState.kt @@ -6,6 +6,5 @@ data class ChatsSettingsState( val keepMutedChatsArchived: Boolean, val useSystemEmoji: Boolean, val enterKeySends: Boolean, - val localBackupsEnabled: Boolean, - val canAccessRemoteBackupsSettings: Boolean + val localBackupsEnabled: Boolean ) diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/chats/ChatsSettingsViewModel.kt b/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/chats/ChatsSettingsViewModel.kt index c0765af6a4..f726738063 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/chats/ChatsSettingsViewModel.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/chats/ChatsSettingsViewModel.kt @@ -2,11 +2,6 @@ package org.thoughtcrime.securesms.components.settings.app.chats import androidx.lifecycle.LiveData import androidx.lifecycle.ViewModel -import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers -import io.reactivex.rxjava3.core.Single -import io.reactivex.rxjava3.kotlin.subscribeBy -import io.reactivex.rxjava3.schedulers.Schedulers -import org.thoughtcrime.securesms.backup.v2.BackupRepository import org.thoughtcrime.securesms.dependencies.AppDependencies import org.thoughtcrime.securesms.keyvalue.SignalStore import org.thoughtcrime.securesms.util.BackupUtil @@ -27,24 +22,12 @@ class ChatsSettingsViewModel @JvmOverloads constructor( keepMutedChatsArchived = SignalStore.settings.shouldKeepMutedChatsArchived(), useSystemEmoji = SignalStore.settings.isPreferSystemEmoji, enterKeySends = SignalStore.settings.isEnterKeySends, - localBackupsEnabled = SignalStore.settings.isBackupEnabled && BackupUtil.canUserAccessBackupDirectory(AppDependencies.application), - canAccessRemoteBackupsSettings = SignalStore.backup.areBackupsEnabled + localBackupsEnabled = SignalStore.settings.isBackupEnabled && BackupUtil.canUserAccessBackupDirectory(AppDependencies.application) ) ) val state: LiveData = store.stateLiveData - private val disposable = Single.fromCallable { BackupRepository.canAccessRemoteBackupSettings() } - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .subscribeBy { canAccessRemoteBackupSettings -> - store.update { it.copy(canAccessRemoteBackupsSettings = canAccessRemoteBackupSettings) } - } - - override fun onCleared() { - disposable.dispose() - } - fun setGenerateLinkPreviewsEnabled(enabled: Boolean) { store.update { it.copy(generateLinkPreviews = enabled) } SignalStore.settings.isLinkPreviewsEnabled = enabled @@ -76,12 +59,10 @@ class ChatsSettingsViewModel @JvmOverloads constructor( fun refresh() { val backupsEnabled = SignalStore.settings.isBackupEnabled && BackupUtil.canUserAccessBackupDirectory(AppDependencies.application) - val remoteBackupsEnabled = SignalStore.backup.areBackupsEnabled - if (store.state.localBackupsEnabled != backupsEnabled || - store.state.canAccessRemoteBackupsSettings != remoteBackupsEnabled + if (store.state.localBackupsEnabled != backupsEnabled ) { - store.update { it.copy(localBackupsEnabled = backupsEnabled, canAccessRemoteBackupsSettings = remoteBackupsEnabled) } + store.update { it.copy(localBackupsEnabled = backupsEnabled) } } } } diff --git a/app/src/main/res/navigation/app_settings.xml b/app/src/main/res/navigation/app_settings.xml index 967988588e..21cfae37b9 100644 --- a/app/src/main/res/navigation/app_settings.xml +++ b/app/src/main/res/navigation/app_settings.xml @@ -352,13 +352,6 @@ app:exitAnim="@anim/fragment_open_exit" app:popEnterAnim="@anim/fragment_close_enter" app:popExitAnim="@anim/fragment_close_exit" /> - -