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 a3c369327bdf5f518d575a6ce426ddc6280ddaf1..bd19969fcd7610e133e8f0f6f400e738c195ea86 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 a16314f81d0309c1cc6a9ee79b5305dd73d2cd8d..7c4dbf0a9cf9d8eba8e1791a30b3cb4e180e5986 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>())