From 09b05307bf52b2c71ea0c6e0fee40129db628ed9 Mon Sep 17 00:00:00 2001
From: Janne Koschinski <janne@kuschku.de>
Date: Wed, 4 Apr 2018 18:00:24 +0200
Subject: [PATCH] Don't add status buffers to buffer list

---
 .../ui/chat/buffers/BufferViewConfigFragment.kt           | 2 +-
 .../libquassel/quassel/syncables/BufferViewConfig.kt      | 8 +++++---
 2 files changed, 6 insertions(+), 4 deletions(-)

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 f1c23c4ff..cc52089d3 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
@@ -126,7 +126,7 @@ class BufferViewConfigFragment : ServiceBoundFragment() {
           }
           R.id.action_unhide     -> {
             bufferSyncer?.let {
-              bufferViewConfig?.orNull()?.requestAddBuffer(info, bufferSyncer)
+              bufferViewConfig?.orNull()?.insertBufferSorted(info, bufferSyncer)
             }
             true
           }
diff --git a/lib/src/main/java/de/kuschku/libquassel/quassel/syncables/BufferViewConfig.kt b/lib/src/main/java/de/kuschku/libquassel/quassel/syncables/BufferViewConfig.kt
index 5296f71be..1cee19a48 100644
--- a/lib/src/main/java/de/kuschku/libquassel/quassel/syncables/BufferViewConfig.kt
+++ b/lib/src/main/java/de/kuschku/libquassel/quassel/syncables/BufferViewConfig.kt
@@ -6,6 +6,7 @@ import de.kuschku.libquassel.protocol.Type
 import de.kuschku.libquassel.quassel.BufferInfo
 import de.kuschku.libquassel.quassel.syncables.interfaces.IBufferViewConfig
 import de.kuschku.libquassel.session.SignalProxy
+import de.kuschku.libquassel.util.flag.hasFlag
 import io.reactivex.Observable
 import io.reactivex.subjects.BehaviorSubject
 
@@ -297,7 +298,7 @@ class BufferViewConfig constructor(
       (a?.bufferViewName() ?: "").compareTo((b?.bufferViewName() ?: ""), true)
   }
 
-  fun requestAddBuffer(info: BufferInfo, bufferSyncer: BufferSyncer) {
+  fun insertBufferSorted(info: BufferInfo, bufferSyncer: BufferSyncer) {
     if (!_buffers.contains(info.bufferId)) {
       val position = if (_sortAlphabetically) {
         val sortedBuffers = _buffers.mapNotNull { bufferSyncer.bufferInfo(it)?.bufferName }
@@ -313,8 +314,9 @@ class BufferViewConfig constructor(
     if (_addNewBuffersAutomatically &&
         !_buffers.contains(info.bufferId) &&
         !_temporarilyRemovedBuffers.contains(info.bufferId) &&
-        !_removedBuffers.contains(info.bufferId)) {
-      requestAddBuffer(info, bufferSyncer)
+        !_removedBuffers.contains(info.bufferId) &&
+        !info.type.hasFlag(Buffer_Type.StatusBuffer)) {
+      insertBufferSorted(info, bufferSyncer)
     }
   }
 }
-- 
GitLab