From d09c828b457e40d9154cf65a6f74500af95dc02b Mon Sep 17 00:00:00 2001 From: Janne Koschinski <janne@kuschku.de> Date: Wed, 6 Jun 2018 19:49:38 +0200 Subject: [PATCH] Reset selected buffer and more if the account changes --- .../java/de/kuschku/quasseldroid/ui/chat/ChatActivity.kt | 1 + .../de/kuschku/quasseldroid/viewmodel/QuasselViewModel.kt | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/app/src/main/java/de/kuschku/quasseldroid/ui/chat/ChatActivity.kt b/app/src/main/java/de/kuschku/quasseldroid/ui/chat/ChatActivity.kt index a3c369327..bd19969fc 100644 --- a/app/src/main/java/de/kuschku/quasseldroid/ui/chat/ChatActivity.kt +++ b/app/src/main/java/de/kuschku/quasseldroid/ui/chat/ChatActivity.kt @@ -740,6 +740,7 @@ class ChatActivity : ServiceBoundActivity(), SharedPreferences.OnSharedPreferenc if (!startedSelection) { startActivityForResult(AccountSelectionActivity.intent(this), REQUEST_SELECT_ACCOUNT) startedSelection = true + viewModel.resetAccount() } } diff --git a/viewmodel/src/main/java/de/kuschku/quasseldroid/viewmodel/QuasselViewModel.kt b/viewmodel/src/main/java/de/kuschku/quasseldroid/viewmodel/QuasselViewModel.kt index a16314f81..7c4dbf0a9 100644 --- a/viewmodel/src/main/java/de/kuschku/quasseldroid/viewmodel/QuasselViewModel.kt +++ b/viewmodel/src/main/java/de/kuschku/quasseldroid/viewmodel/QuasselViewModel.kt @@ -46,6 +46,14 @@ import io.reactivex.subjects.PublishSubject import java.util.concurrent.TimeUnit class QuasselViewModel : ViewModel() { + fun resetAccount() { + buffer.onNext(Int.MAX_VALUE) + bufferViewConfigId.onNext(Int.MAX_VALUE) + selectedMessages.onNext(emptyMap()) + expandedMessages.onNext(emptySet()) + recentlySentMessages.onNext(emptyList()) + } + val backendWrapper = BehaviorSubject.createDefault(Observable.empty<Optional<Backend>>()) val selectedMessages = BehaviorSubject.createDefault(emptyMap<MsgId, FormattedMessage>()) -- GitLab