summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJonatan Rhodin <jonatan.rhodin@mullvad.net>2024-06-19 23:38:07 +0200
committerJonatan Rhodin <jonatan.rhodin@mullvad.net>2024-06-24 11:22:18 +0200
commit116e3aa5334e1ed006d5bfc566df7061a68ecd51 (patch)
tree0ae1a3ac9c41d74a8600452064ce65c481be88db
parentbed092a29da3e3451f1d7dd9cb29a84b539be84d (diff)
downloadmullvadvpn-116e3aa5334e1ed006d5bfc566df7061a68ecd51.tar.xz
mullvadvpn-116e3aa5334e1ed006d5bfc566df7061a68ecd51.zip
Parse changelog with bullet point list instead of just newlines
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/repository/ChangelogRepository.kt12
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/util/StringExtensions.kt2
2 files changed, 11 insertions, 3 deletions
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/repository/ChangelogRepository.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/repository/ChangelogRepository.kt
index 3e8150bf97..2a4b639725 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/repository/ChangelogRepository.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/repository/ChangelogRepository.kt
@@ -2,9 +2,12 @@ package net.mullvad.mullvadvpn.repository
import android.content.SharedPreferences
import net.mullvad.mullvadvpn.util.IChangelogDataProvider
+import net.mullvad.mullvadvpn.util.trimAll
private const val MISSING_VERSION_CODE = -1
private const val NEWLINE_CHAR = '\n'
+private const val SPACE_STRING = " "
+private const val BULLET_POINT_CHAR = '-'
private const val LAST_SHOWED_CHANGELOG_VERSION_CODE = "last_showed_changelog_version_code"
class ChangelogRepository(
@@ -18,7 +21,10 @@ class ChangelogRepository(
fun setVersionCodeOfMostRecentChangelogShowed(versionCode: Int) =
preferences.edit().putInt(LAST_SHOWED_CHANGELOG_VERSION_CODE, versionCode).apply()
- fun getLastVersionChanges(): List<String> {
- return dataProvider.getChangelog().split(NEWLINE_CHAR).filter { it.isNotEmpty() }
- }
+ fun getLastVersionChanges(): List<String> =
+ dataProvider
+ .getChangelog()
+ .split(BULLET_POINT_CHAR)
+ .map { it.split(NEWLINE_CHAR).trimAll().joinToString(SPACE_STRING).trim() }
+ .filter { it.isNotEmpty() }
}
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/util/StringExtensions.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/util/StringExtensions.kt
index f0cf46978b..adc64ec41e 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/util/StringExtensions.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/util/StringExtensions.kt
@@ -12,3 +12,5 @@ fun String.appendHideNavOnPlayBuild(isPlayBuild: Boolean): String =
fun String.removeHtmlTags(): String =
Html.fromHtml(this, HtmlCompat.FROM_HTML_MODE_LEGACY).toString()
+
+fun List<String>.trimAll() = map { it.trim() }