diff options
| author | Kalle Lindström <karl.lindstrom@mullvad.net> | 2024-10-04 12:03:06 +0200 |
|---|---|---|
| committer | David Göransson <david.goransson@mullvad.net> | 2024-10-07 08:34:52 +0200 |
| commit | cd084f800055a344262e5100d24ebeb500860e83 (patch) | |
| tree | 5b5d00686dd2e4241d99aefb1d80ab2035b8ff81 /android/app/src/main | |
| parent | 2912d6f8c9b535711a98a52e0c1285f4db6d6a48 (diff) | |
| download | mullvadvpn-cd084f800055a344262e5100d24ebeb500860e83.tar.xz mullvadvpn-cd084f800055a344262e5100d24ebeb500860e83.zip | |
Use Duration instead of Period
Diffstat (limited to 'android/app/src/main')
3 files changed, 15 insertions, 14 deletions
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/component/notificationbanner/NotificationBanner.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/component/notificationbanner/NotificationBanner.kt index d20d9cfcd9..a2485f2e99 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/component/notificationbanner/NotificationBanner.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/component/notificationbanner/NotificationBanner.kt @@ -36,7 +36,7 @@ import net.mullvad.mullvadvpn.lib.theme.color.warning import net.mullvad.mullvadvpn.repository.InAppNotification import net.mullvad.mullvadvpn.ui.VersionInfo import net.mullvad.mullvadvpn.ui.notification.StatusLevel -import org.joda.time.Period +import org.joda.time.Duration @Preview @Composable @@ -48,7 +48,7 @@ private fun PreviewNotificationBanner() { InAppNotification.UnsupportedVersion( versionInfo = VersionInfo(currentVersion = "1.0", isSupported = false) ), - InAppNotification.AccountExpiry(expiry = Period.ZERO), + InAppNotification.AccountExpiry(expiry = Duration.ZERO), InAppNotification.TunnelStateBlocked, InAppNotification.NewDevice("Courageous Turtle"), InAppNotification.TunnelStateError( diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/extensions/ResourcesExtensions.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/extensions/ResourcesExtensions.kt index 3291542297..11b41dd27a 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/extensions/ResourcesExtensions.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/extensions/ResourcesExtensions.kt @@ -2,17 +2,20 @@ package net.mullvad.mullvadvpn.compose.extensions import android.content.res.Resources import net.mullvad.mullvadvpn.R +import org.joda.time.DateTime +import org.joda.time.Duration import org.joda.time.Period -fun Resources.getExpiryQuantityString(accountExpiry: Period): String { - return if (accountExpiry.isNegative() || accountExpiry == Period.ZERO) { +fun Resources.getExpiryQuantityString(accountExpiry: Duration): String { + val expiryPeriod = Period(DateTime.now(), accountExpiry) + return if (accountExpiry.millis <= 0) { getString(R.string.out_of_time) - } else if (accountExpiry.years > 0) { - getRemainingText(this, R.plurals.years_left, accountExpiry.years) - } else if (accountExpiry.months >= 3) { - getRemainingText(this, R.plurals.months_left, accountExpiry.months) - } else if (accountExpiry.months > 0 || accountExpiry.days >= 1) { - getRemainingText(this, R.plurals.days_left, accountExpiry.days) + } else if (expiryPeriod.years > 0) { + getRemainingText(this, R.plurals.years_left, expiryPeriod.years) + } else if (expiryPeriod.months >= 3) { + getRemainingText(this, R.plurals.months_left, expiryPeriod.months) + } else if (expiryPeriod.months > 0 || expiryPeriod.days >= 1) { + getRemainingText(this, R.plurals.days_left, expiryPeriod.days) } else { getString(R.string.less_than_a_day_left) } @@ -21,5 +24,3 @@ fun Resources.getExpiryQuantityString(accountExpiry: Period): String { private fun getRemainingText(resources: Resources, pluralId: Int, quantity: Int): String { return resources.getQuantityString(pluralId, quantity, quantity) } - -fun Period.isNegative() = toStandardDuration().millis < 0 diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/repository/InAppNotificationController.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/repository/InAppNotificationController.kt index 45cfdd2bb1..1608e3689e 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/repository/InAppNotificationController.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/repository/InAppNotificationController.kt @@ -11,7 +11,7 @@ import net.mullvad.mullvadvpn.usecase.AccountExpiryInAppNotificationUseCase import net.mullvad.mullvadvpn.usecase.NewDeviceNotificationUseCase import net.mullvad.mullvadvpn.usecase.TunnelStateNotificationUseCase import net.mullvad.mullvadvpn.usecase.VersionNotificationUseCase -import org.joda.time.Period +import org.joda.time.Duration enum class StatusLevel { Error, @@ -38,7 +38,7 @@ sealed class InAppNotification { override val priority: Long = 999 } - data class AccountExpiry(val expiry: Period) : InAppNotification() { + data class AccountExpiry(val expiry: Duration) : InAppNotification() { override val statusLevel = StatusLevel.Warning override val priority: Long = 1001 } |
