diff --git a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/NickListAdapter.kt b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/NickListAdapter.kt index 7e4e0c413d613d0450801399184bbfafbba6c9de..9b17073fb8282b214e04be6138da76e183d94539 100644 --- a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/NickListAdapter.kt +++ b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/NickListAdapter.kt @@ -13,6 +13,7 @@ import butterknife.BindView import butterknife.ButterKnife import de.kuschku.quasseldroid_ng.R import de.kuschku.quasseldroid_ng.util.helper.visibleIf +import de.kuschku.quasseldroid_ng.util.irc.IrcCaseMappers class NickListAdapter( lifecycleOwner: LifecycleOwner, @@ -30,7 +31,7 @@ class NickListAdapter( val list = it ?: emptyList() val old: List<IrcUserItem> = data val new: List<IrcUserItem> = list - .sortedBy { it.nick.toLowerCase() } + .sortedBy { IrcCaseMappers[it.networkCasemapping].toLowerCase(it.nick) } .sortedBy { it.lowestMode } val result = DiffUtil.calculateDiff( object : DiffUtil.Callback() { @@ -81,7 +82,8 @@ class NickListAdapter( val modes: String, val lowestMode: Int, val realname: String, - val away: Boolean + val away: Boolean, + val networkCasemapping: String ) class NickViewHolder( diff --git a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/NickListFragment.kt b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/NickListFragment.kt index 39d97df1af931b40f0a6c534c94a9ab47f18c1d4..acbecda607ae9f40954d845709266f12e5e8b623 100644 --- a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/NickListFragment.kt +++ b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/NickListFragment.kt @@ -65,7 +65,8 @@ class NickListFragment : ServiceBoundFragment() { network.modesToPrefixes(userModes), lowestMode, realName, - away + away, + network.support("CASEMAPPING") ) } }, { array: Array<Any> ->