Skip to content

Commit ea5556a

Browse files
committed
Upload file
1 parent 69f6336 commit ea5556a

1 file changed

Lines changed: 12 additions & 9 deletions

File tree

krscript/src/main/java/com/omarea/krscript/ui/ParamsAppChooserRender.kt

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -78,24 +78,27 @@ class ParamsAppChooserRender(
7878
// =======================
7979
private fun insertSorted(
8080
list: MutableList<AdapterAppChooser.AppInfo>,
81-
item: AdapterAppChooser.AppInfo
81+
item: AdapterAppChooser.AppInfo,
82+
collator: Collator
8283
) {
8384
var low = 0
8485
var high = list.size
85-
86-
val itemName = item.appName ?: ""
86+
val name = item.appName ?: ""
8787

8888
while (low < high) {
8989
val mid = (low + high) ushr 1
90-
val midName = list[mid].appName ?: ""
90+
val m = list[mid]
91+
92+
when {
93+
m.selected != item.selected ->
94+
if (item.selected) high = mid else low = mid + 1
9195

92-
if (collator.compare(midName, itemName) < 0) {
93-
low = mid + 1
94-
} else {
95-
high = mid
96+
collator.compare(m.appName ?: "", name) < 0 ->
97+
low = mid + 1
98+
99+
else -> high = mid
96100
}
97101
}
98-
99102
list.add(low, item)
100103
}
101104

0 commit comments

Comments
 (0)