Skip to content
Snippets Groups Projects
Verified Commit 588d15d8 authored by Janne Mareike Koschinski's avatar Janne Mareike Koschinski
Browse files

(Hopefully) fixes #122

parent 9ab1bdca
Branches
Tags
No related merge requests found
......@@ -604,6 +604,10 @@ class ChatActivity : ServiceBoundActivity(), SharedPreferences.OnSharedPreferenc
}
override fun onStart() {
val buffers = viewModel.bufferList.value
val bufferId = viewModel.buffer.value
val bufferViewConfigId = viewModel.bufferViewConfigId.value
val bufferViewConfig = viewModel.bufferViewConfig.value
if (Settings.autoComplete(this) != autoCompleteSettings) {
recreate()
}
......
......@@ -231,6 +231,7 @@ class BufferViewConfigFragment : ServiceBoundFragment() {
}
if (!hasSetBufferViewConfigId) {
chatListSpinner.setSelection(adapter.indexOf(viewModel.bufferViewConfigId.value))
viewModel.bufferViewConfigId.onNext(chatListSpinner.selectedItemId.toInt())
hasSetBufferViewConfigId = true
}
}
......@@ -446,6 +447,11 @@ class BufferViewConfigFragment : ServiceBoundFragment() {
chatListSpinner.onRestoreInstanceState(getParcelable(KEY_STATE_SPINNER))
}
viewModel.stateReset.toLiveData().observe(this, Observer {
hasSetBufferViewConfigId = false
hasRestoredSpinnerState = false
})
return view
}
......
......@@ -47,13 +47,16 @@ import java.util.concurrent.TimeUnit
class QuasselViewModel : ViewModel() {
fun resetAccount() {
stateReset.onNext(Unit)
buffer.onNext(Int.MAX_VALUE)
bufferViewConfigId.onNext(Int.MAX_VALUE)
bufferViewConfigId.onNext(-1)
selectedMessages.onNext(emptyMap())
expandedMessages.onNext(emptySet())
recentlySentMessages.onNext(emptyList())
}
val stateReset = PublishSubject.create<Unit>()
val backendWrapper = BehaviorSubject.createDefault(Observable.empty<Optional<Backend>>())
val selectedMessages = BehaviorSubject.createDefault(emptyMap<MsgId, FormattedMessage>())
......@@ -69,7 +72,7 @@ class QuasselViewModel : ViewModel() {
val buffer = BehaviorSubject.createDefault(Int.MAX_VALUE)
val bufferOpened = PublishSubject.create<Unit>()
val bufferViewConfigId = BehaviorSubject.createDefault(Int.MAX_VALUE)
val bufferViewConfigId = BehaviorSubject.createDefault(-1)
val MAX_RECENT_MESSAGES = 20
val recentlySentMessages = BehaviorSubject.createDefault(emptyList<CharSequence>())
......@@ -321,7 +324,7 @@ class QuasselViewModel : ViewModel() {
}
}
val bufferList: Observable<Pair<BufferViewConfig?, List<BufferProps>>?> =
val bufferList: Observable<Pair<BufferViewConfig?, List<BufferProps>>> =
combineLatest(session, bufferViewConfig, showHidden)
.switchMap { (sessionOptional, configOptional, showHiddenRaw) ->
val session = sessionOptional.orNull()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment