From 9a376df1154f1b4dc96206f16ef56596b26ddb41 Mon Sep 17 00:00:00 2001 From: tibbi Date: Sun, 10 Dec 2017 19:33:26 +0100 Subject: [PATCH] move names not starting with a letter at the bottom --- .../simplemobiletools/contacts/activities/MainActivity.kt | 2 +- .../com/simplemobiletools/contacts/models/Contact.kt | 8 +++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt index 9e7b94cb..a4105c77 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt @@ -64,6 +64,7 @@ class MainActivity : SimpleActivity(), RefreshRecyclerViewListener { } contacts_fastscroller.updateBubbleColors() + contacts_fastscroller.allowBubbleDisplay = config.showInfoBubble updateTextColors(contacts_holder) } @@ -127,7 +128,6 @@ class MainActivity : SimpleActivity(), RefreshRecyclerViewListener { contacts_list.adapter = this } - contacts_fastscroller.allowBubbleDisplay = config.showInfoBubble contacts_fastscroller.setViews(contacts_list) { val item = contacts.getOrNull(it) contacts_fastscroller.updateBubbleText(item?.getBubbleText() ?: "") diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/models/Contact.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/models/Contact.kt index e2de78c3..bdecb1ba 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/models/Contact.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/models/Contact.kt @@ -11,7 +11,13 @@ data class Contact(val id: Int, var name: String, var number: String, var photoU override fun compareTo(other: Contact): Int { var result = when { (sorting and SORT_BY_NUMBER != 0) -> number.toLowerCase().compareTo(other.number.toLowerCase()) - else -> name.toLowerCase().compareTo(other.name.toLowerCase()) + else -> if (name.first().isLetter() && !other.name.first().isLetter()) { + -1 + } else if (!name.first().isLetter() && other.name.first().isLetter()) { + 1 + } else { + name.toLowerCase().compareTo(other.name.toLowerCase()) + } } if (sorting and SORT_DESCENDING != 0) {