@@ -101,7 +101,7 @@ class ParamsAppChooserRender(
101101
102102 val collator = Collator .getInstance(Locale .getDefault())
103103 val result = appMap.values.sortedWith { a, b ->
104- collator.compare(a.appName, b.appName)
104+ collator.compare(a.appName ? : " " , b.appName ? : " " )
105105 }
106106
107107 if (includeMissing) {
@@ -116,7 +116,9 @@ class ParamsAppChooserRender(
116116 * Đặt trạng thái selected (O(n))
117117 */
118118 private fun setSelectStatus () {
119- val map = packages.associateBy { it.packageName }
119+ val map = packages
120+ .filter { it.packageName != null }
121+ .associateBy { it.packageName!! }
120122 packages.forEach { it.selected = false }
121123
122124 if (actionParamInfo.multiple) {
@@ -145,8 +147,8 @@ class ParamsAppChooserRender(
145147 packages.forEach {
146148 validOptions.add(
147149 SelectItem ().apply {
148- title = it.appName
149- value = it.packageName
150+ title = it.appName ? : " "
151+ value = it.packageName ? : " "
150152 }
151153 )
152154 }
@@ -159,8 +161,8 @@ class ParamsAppChooserRender(
159161
160162 if (currentIndex >= 0 ) {
161163 val item = packages[currentIndex]
162- valueView.text = item.packageName
163- nameView.text = item.appName
164+ valueView.text = item.packageName ? : " "
165+ nameView.text = item.appName ? : " "
164166 } else {
165167 valueView.text = " "
166168 nameView.text = " "
@@ -174,9 +176,9 @@ class ParamsAppChooserRender(
174176 override fun onConfirm (apps : List <AdapterAppChooser .AppInfo >) {
175177 if (actionParamInfo.multiple) {
176178 valueView.text =
177- apps.joinToString(actionParamInfo.separator) { it.packageName }
179+ apps.joinToString(actionParamInfo.separator) { it.packageName ? : " " }
178180 nameView.text =
179- apps.joinToString(" ," ) { it.appName }
181+ apps.joinToString(" ," ) { it.appName ? : " " }
180182 } else {
181183 val item = apps.firstOrNull()
182184 valueView.text = item?.packageName.orEmpty()
0 commit comments