From f992ec863d1628ba9c2d2575cd37efba1f3462c9 Mon Sep 17 00:00:00 2001 From: Janne Koschinski <janne@kuschku.de> Date: Fri, 8 Jun 2018 18:05:50 +0200 Subject: [PATCH] Fixes #122 in a much cleaner and more reusable way --- .../de/kuschku/quasseldroid/service/QuasselService.kt | 7 +++---- .../de/kuschku/quasseldroid/ui/chat/ChatActivity.kt | 2 +- .../ui/chat/buffers/BufferViewConfigFragment.kt | 11 +---------- 3 files changed, 5 insertions(+), 15 deletions(-) diff --git a/app/src/main/java/de/kuschku/quasseldroid/service/QuasselService.kt b/app/src/main/java/de/kuschku/quasseldroid/service/QuasselService.kt index 13bcc255c..0e177366c 100644 --- a/app/src/main/java/de/kuschku/quasseldroid/service/QuasselService.kt +++ b/app/src/main/java/de/kuschku/quasseldroid/service/QuasselService.kt @@ -417,10 +417,9 @@ class QuasselService : DaggerLifecycleService(), disconnect: Boolean? = null, markRead: BufferId? = null, markReadMessage: MsgId? = null - ): ComponentName = context.startService(intent(context, - disconnect, - markRead, - markReadMessage)) + ): ComponentName = context.startService( + intent(context, disconnect, markRead, markReadMessage) + ) fun intent( context: Context, 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 9979f75e8..a355dc046 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 @@ -857,8 +857,8 @@ class ChatActivity : ServiceBoundActivity(), SharedPreferences.OnSharedPreferenc override fun onSelectAccount() { if (!startedSelection) { - startActivityForResult(AccountSelectionActivity.intent(this), REQUEST_SELECT_ACCOUNT) resetAccount() + startActivityForResult(AccountSelectionActivity.intent(this), REQUEST_SELECT_ACCOUNT) } } diff --git a/app/src/main/java/de/kuschku/quasseldroid/ui/chat/buffers/BufferViewConfigFragment.kt b/app/src/main/java/de/kuschku/quasseldroid/ui/chat/buffers/BufferViewConfigFragment.kt index 06e0494ae..e75cc68a9 100644 --- a/app/src/main/java/de/kuschku/quasseldroid/ui/chat/buffers/BufferViewConfigFragment.kt +++ b/app/src/main/java/de/kuschku/quasseldroid/ui/chat/buffers/BufferViewConfigFragment.kt @@ -223,13 +223,7 @@ class BufferViewConfigFragment : ServiceBoundFragment() { }) var hasSetBufferViewConfigId = false - var hasRestoredSpinnerState = false adapter.setOnUpdateFinishedListener { - if (!hasRestoredSpinnerState) { - savedInstanceState?.getParcelable<Parcelable>(KEY_STATE_SPINNER) - ?.let(chatListSpinner::onRestoreInstanceState) - hasRestoredSpinnerState = true - } if (!hasSetBufferViewConfigId) { chatListSpinner.setSelection(adapter.indexOf(viewModel.bufferViewConfigId.value).nullIf { it == -1 } ?: 0) @@ -446,12 +440,11 @@ class BufferViewConfigFragment : ServiceBoundFragment() { savedInstanceState?.run { chatList.layoutManager.onRestoreInstanceState(getParcelable(KEY_STATE_LIST)) - chatListSpinner.onRestoreInstanceState(getParcelable(KEY_STATE_SPINNER)) } viewModel.stateReset.toLiveData().observe(this, Observer { + listAdapter.submitList(emptyList()) hasSetBufferViewConfigId = false - hasRestoredSpinnerState = false }) return view @@ -460,7 +453,6 @@ class BufferViewConfigFragment : ServiceBoundFragment() { override fun onSaveInstanceState(outState: Bundle) { super.onSaveInstanceState(outState) outState.putParcelable(KEY_STATE_LIST, chatList.layoutManager.onSaveInstanceState()) - outState.putParcelable(KEY_STATE_SPINNER, chatListSpinner.onSaveInstanceState()) } private fun clickListener(it: BufferId) { @@ -483,6 +475,5 @@ class BufferViewConfigFragment : ServiceBoundFragment() { companion object { private const val KEY_STATE_LIST = "STATE_LIST" - private const val KEY_STATE_SPINNER = "STATE_SPINNER" } } -- GitLab