diff --git a/app/src/main/kotlin/app/grapheneos/info/ui/releases/ReleasesViewModel.kt b/app/src/main/kotlin/app/grapheneos/info/ui/releases/ReleasesViewModel.kt
index 7051985..595e5b0 100644
--- a/app/src/main/kotlin/app/grapheneos/info/ui/releases/ReleasesViewModel.kt
+++ b/app/src/main/kotlin/app/grapheneos/info/ui/releases/ReleasesViewModel.kt
@@ -69,15 +69,31 @@ class ReleasesViewModel(
Pair("(.*?)".toRegex().find(entry)?.groups?.get(1)?.value ?: entry.hashCode().toString(), entry)
}.toMap()
+ val osIncrementalVersion = android.os.Build.VERSION.INCREMENTAL
+
var currentOsChangelogIndex = newEntries.toSortedMap().toList().asReversed().indexOfFirst { entry ->
val title = "
(.*?)".toRegex()
.find(entry.second)?.groups?.get(1)?.value
- title == android.os.Build.VERSION.INCREMENTAL
+ title == osIncrementalVersion
}
if (currentOsChangelogIndex == -1) {
- currentOsChangelogIndex = 0
+ currentOsChangelogIndex = newEntries.toSortedMap().toList().asReversed().indexOfFirst { entry ->
+ val title = "(.*?)".toRegex()
+ .find(entry.second)?.groups?.get(1)?.value
+
+ val incrementedTitle = title?.replace(Regex("(\\d+)$")) { matchResult ->
+ val num = matchResult.value.toInt()
+ (num + 1).toString()
+ }
+
+ incrementedTitle == osIncrementalVersion
+ }
+
+ if (currentOsChangelogIndex == -1) {
+ currentOsChangelogIndex = 0
+ }
}
newEntries = newEntries.toSortedMap().toList().asReversed().filterIndexed { index, _ ->