From 3c9d629743049b031f3dfebba7e14d2593133df3 Mon Sep 17 00:00:00 2001
From: Janne Koschinski <janne@kuschku.de>
Date: Wed, 11 Apr 2018 18:11:00 +0200
Subject: [PATCH] Minor fixes

---
 .../quasseldroid/ui/chat/messages/QuasselMessageRenderer.kt | 6 ++----
 .../kuschku/quasseldroid/ui/chat/nicks/NickListFragment.kt  | 4 +++-
 .../de/kuschku/libquassel/quassel/syncables/BufferSyncer.kt | 3 ++-
 .../java/de/kuschku/libquassel/quassel/syncables/Network.kt | 2 +-
 4 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/app/src/main/java/de/kuschku/quasseldroid/ui/chat/messages/QuasselMessageRenderer.kt b/app/src/main/java/de/kuschku/quasseldroid/ui/chat/messages/QuasselMessageRenderer.kt
index b6946bae8..22cbf88c0 100644
--- a/app/src/main/java/de/kuschku/quasseldroid/ui/chat/messages/QuasselMessageRenderer.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid/ui/chat/messages/QuasselMessageRenderer.kt
@@ -520,8 +520,7 @@ class QuasselMessageRenderer @Inject constructor(
     }
   }
 
-  private fun formatNick(sender: String, self: Boolean,
-                         highlight: Boolean, showHostmask: Boolean) =
+  private fun formatNick(sender: String, self: Boolean, highlight: Boolean, showHostmask: Boolean) =
     when (messageSettings.colorizeNicknames) {
       ColorizeNicknamesMode.ALL          ->
         formatNickImpl(sender, !highlight, showHostmask)
@@ -531,8 +530,7 @@ class QuasselMessageRenderer @Inject constructor(
         formatNickImpl(sender, false, showHostmask)
     }
 
-  private fun formatPrefix(prefix: String,
-                           highlight: Boolean) = when (messageSettings.showPrefix) {
+  private fun formatPrefix(prefix: String, highlight: Boolean) = when (messageSettings.showPrefix) {
     ShowPrefixMode.ALL     -> prefix
     ShowPrefixMode.HIGHEST -> prefix.substring(0, Math.min(prefix.length, 1))
     ShowPrefixMode.NONE    -> ""
diff --git a/app/src/main/java/de/kuschku/quasseldroid/ui/chat/nicks/NickListFragment.kt b/app/src/main/java/de/kuschku/quasseldroid/ui/chat/nicks/NickListFragment.kt
index 5aafe6bda..7c9511592 100644
--- a/app/src/main/java/de/kuschku/quasseldroid/ui/chat/nicks/NickListFragment.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid/ui/chat/nicks/NickListFragment.kt
@@ -29,6 +29,7 @@ import de.kuschku.quasseldroid.R
 import de.kuschku.quasseldroid.settings.AppearanceSettings
 import de.kuschku.quasseldroid.settings.MessageSettings
 import de.kuschku.quasseldroid.ui.chat.info.user.UserInfoActivity
+import de.kuschku.quasseldroid.ui.chat.input.AutoCompleteHelper.Companion.IGNORED_CHARS
 import de.kuschku.quasseldroid.util.AvatarHelper
 import de.kuschku.quasseldroid.util.helper.loadWithFallbacks
 import de.kuschku.quasseldroid.util.helper.styledAttributes
@@ -119,7 +120,8 @@ class NickListFragment : ServiceBoundFragment() {
           avatarUrls = AvatarHelper.avatar(messageSettings, it, avatarSize)
         )
       }.sortedBy {
-        IrcCaseMappers.unicode.toLowerCase(it.nick)
+        IrcCaseMappers[it.networkCasemapping].toLowerCase(it.nick.trimStart(*IGNORED_CHARS))
+          .trimStart(*IGNORED_CHARS)
       }.sortedBy {
         it.lowestMode
       }
diff --git a/lib/src/main/java/de/kuschku/libquassel/quassel/syncables/BufferSyncer.kt b/lib/src/main/java/de/kuschku/libquassel/quassel/syncables/BufferSyncer.kt
index 3209bbd9c..737c47465 100644
--- a/lib/src/main/java/de/kuschku/libquassel/quassel/syncables/BufferSyncer.kt
+++ b/lib/src/main/java/de/kuschku/libquassel/quassel/syncables/BufferSyncer.kt
@@ -230,7 +230,8 @@ class BufferSyncer constructor(
   }.filter {
     groupId == null || it.groupId == groupId
   }.filter {
-    bufferName == null || IrcCaseMappers.unicode.equalsIgnoreCaseNullable(it.bufferName, bufferName)
+    val caseMapper = IrcCaseMappers[session.networks[it.bufferId]?.support("CASEMAPPING")]
+    bufferName == null || caseMapper.equalsIgnoreCaseNullable(it.bufferName, bufferName)
   }
 
   fun find(
diff --git a/lib/src/main/java/de/kuschku/libquassel/quassel/syncables/Network.kt b/lib/src/main/java/de/kuschku/libquassel/quassel/syncables/Network.kt
index aa738ae01..0cbe0a820 100644
--- a/lib/src/main/java/de/kuschku/libquassel/quassel/syncables/Network.kt
+++ b/lib/src/main/java/de/kuschku/libquassel/quassel/syncables/Network.kt
@@ -24,11 +24,11 @@ class Network constructor(
   }
 
   override fun fromVariantMap(properties: QVariantMap) {
+    initSetSupports(properties["Supports"].valueOr(::emptyMap))
     initSetCaps(properties["Caps"].valueOr(::emptyMap))
     initSetCapsEnabled(properties["CapsEnabled"].valueOr(::emptyList))
     initSetIrcUsersAndChannels(properties["IrcUsersAndChannels"].valueOr(::emptyMap))
     initSetServerList(properties["ServerList"].valueOr(::emptyList))
-    initSetSupports(properties["Supports"].valueOr(::emptyMap))
     initSetProperties(properties)
   }
 
-- 
GitLab