From f972f02fffb8b1b251756dd54e7b3268cc2c17a6 Mon Sep 17 00:00:00 2001 From: Viktor De Pasquale Date: Sat, 16 Nov 2019 20:21:09 +0100 Subject: [PATCH] Fixed clipping version string so it better shows the update's impact Incremental canary bugfix will be: b4b2c4 > f5d2e6 Version bump will be always: 20.2 > 20.3 (regardless of canary/beta/stable) --- .../magisk/redesign/home/HomeViewModel.kt | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/com/topjohnwu/magisk/redesign/home/HomeViewModel.kt b/app/src/main/java/com/topjohnwu/magisk/redesign/home/HomeViewModel.kt index 599380636..9a7a724b3 100644 --- a/app/src/main/java/com/topjohnwu/magisk/redesign/home/HomeViewModel.kt +++ b/app/src/main/java/com/topjohnwu/magisk/redesign/home/HomeViewModel.kt @@ -114,16 +114,16 @@ class HomeViewModel( stateVersionUpdateMagisk.value = when { info.magisk.isObsolete -> "%s > %s".format( - Info.env.magiskVersionString.clipVersion(), - info.magisk.version.clipVersion() + Info.env.magiskVersionString.clipVersion(info.magisk.version), + info.magisk.version.clipVersion(Info.env.magiskVersionString) ) else -> "" } stateVersionUpdateManager.value = when { info.app.isObsolete -> "%s > %s".format( - BuildConfig.VERSION_NAME.clipVersion(), - info.app.version.clipVersion() + BuildConfig.VERSION_NAME.clipVersion(info.app.version), + info.app.version.clipVersion(BuildConfig.VERSION_NAME) ) else -> "" } @@ -184,7 +184,11 @@ val ManagerJson.isUpdateChannelCorrect val ManagerJson.isObsolete get() = BuildConfig.VERSION_CODE < versionCode -fun String.clipVersion() = substringAfter('-') +fun String.clipVersion(other: String = ""): String { + val thisVersion = substringBefore('-') + val otherVersion = other.substringBefore('-') + return if (thisVersion != otherVersion) thisVersion else substringAfter('-') +} inline fun > itemBindingOf( crossinline body: (ItemBinding<*>) -> Unit = {}