From 3a726a034474395b73a8e40f297a704507ccb731 Mon Sep 17 00:00:00 2001
From: Janne Koschinski <janne@kuschku.de>
Date: Mon, 11 Jun 2018 23:00:51 +0200
Subject: [PATCH] Fixes bug where the app would open the wrong buffer when
 resuming

---
 .../de/kuschku/quasseldroid/ui/chat/ChatActivity.kt | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

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 74c49ad38..09fdfcc61 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
@@ -176,22 +176,25 @@ class ChatActivity : ServiceBoundActivity(), SharedPreferences.OnSharedPreferenc
             val info = session.bufferSyncer?.find(
               bufferName = channel,
               networkId = networkId,
-              type = Buffer_Type.of(Buffer_Type.QueryBuffer)
+              type = Buffer_Type.of(Buffer_Type.ChannelBuffer)
             )
 
             if (info != null) {
-              ChatActivity.launch(this, bufferId = info.bufferId)
+              viewModel.buffer.onNext(info.bufferId)
+              viewModel.bufferOpened.onNext(Unit)
             } else {
-
               viewModel.allBuffers.map {
                 listOfNotNull(it.find {
-                  it.networkId == networkId && it.bufferName == channel
+                  it.networkId == networkId &&
+                  it.bufferName == channel &&
+                  it.type.hasFlag(Buffer_Type.ChannelBuffer)
                 })
               }.filter {
                 it.isNotEmpty()
               }.firstElement().toLiveData().observe(this, Observer {
                 it?.firstOrNull()?.let { info ->
-                  ChatActivity.launch(this, bufferId = info.bufferId)
+                  viewModel.buffer.onNext(info.bufferId)
+                  viewModel.bufferOpened.onNext(Unit)
                 }
               })
 
-- 
GitLab