[optimize] Inceased UI Response

This commit is contained in:
acite
2025-09-14 12:35:38 +08:00
parent c330a1e70c
commit 9c04d7679c
2 changed files with 15 additions and 24 deletions

View File

@@ -58,15 +58,12 @@ class ComicScreenViewModel : ViewModel() {
viewModelScope.launch { viewModelScope.launch {
val l = MediaManager.listComics() val l = MediaManager.listComics()
val m = MediaManager.queryComicInfoBulk(l) val m = MediaManager.queryComicInfoBulk(l)
if(m != null) { if(m != null) {
for(i in m) comics.addAll(m.sortedWith(compareBy(naturalOrder()) { it.comic.comic_name }))
{ tags.addAll(m.flatMap { it.comic.tags }.groupingBy { it }.eachCount()
comics.add(i) .entries.sortedByDescending { it.value }
for(j in i.comic.tags) .map { it.key })
{
insertItem(j)
}
}
} }
} }
} }

View File

@@ -57,15 +57,12 @@ class VideoScreenViewModel(application: Application) : AndroidViewModel(applicat
classesMap[it] = mutableStateListOf<Video>() classesMap[it] = mutableStateListOf<Video>()
} }
updatingMap[0] = true updatingMap[0] = true
val vl = MediaManager.queryVideoBulk(classes[0], val vl = MediaManager.queryVideoBulk(classes[0], queryVideoKlasses(classes[0]))
queryVideoKlasses(classes[0])
)
if(vl != null) if(vl != null){
for(it in vl) val r = vl.sortedWith(compareBy(naturalOrder()) { it.video.name })
{ classesMap[classes[0]]?.addAll(r)
classesMap[classes[0]]?.insertInNaturalOrder(it) }
}
} }
fun setTabIndex(index: Int) fun setTabIndex(index: Int)
@@ -77,15 +74,12 @@ class VideoScreenViewModel(application: Application) : AndroidViewModel(applicat
updatingMap[index] = true updatingMap[index] = true
val vl = MediaManager.queryVideoBulk(classes[index], val vl = MediaManager.queryVideoBulk(classes[index], queryVideoKlasses(classes[index]))
queryVideoKlasses(classes[index])
)
if(vl != null) if(vl != null){
for(it in vl) val r = vl.sortedWith(compareBy(naturalOrder()) { it.video.name })
{ classesMap[classes[index]]?.addAll(r)
classesMap[classes[index]]?.insertInNaturalOrder(it) }
}
} }
} }