diff options
| author | Jonatan Rhodin <jonatan.rhodin@mullvad.net> | 2025-01-31 09:18:53 +0100 |
|---|---|---|
| committer | Jonatan Rhodin <jonatan.rhodin@mullvad.net> | 2025-02-04 09:56:31 +0100 |
| commit | 31595f172368fad9468d3c4871e1e6286bae40ea (patch) | |
| tree | 6b0e3ff1b109dffa91ca2e04dd7aa9eb1bbcb99e /android | |
| parent | f52197583dfa73bc5ef9cfd5a42686ddc8f9f888 (diff) | |
| download | mullvadvpn-31595f172368fad9468d3c4871e1e6286bae40ea.tar.xz mullvadvpn-31595f172368fad9468d3c4871e1e6286bae40ea.zip | |
Open the store page on fdroid version
Diffstat (limited to 'android')
5 files changed, 29 insertions, 16 deletions
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/constant/BuildConstant.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/constant/BuildConstant.kt index db76afc769..f06958c90c 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/constant/BuildConstant.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/constant/BuildConstant.kt @@ -3,3 +3,4 @@ package net.mullvad.mullvadvpn.constant import net.mullvad.mullvadvpn.BuildConfig const val IS_PLAY_BUILD = BuildConfig.FLAVOR_billing == "play" +const val IS_FDROID_BUILD = BuildConfig.BUILD_TYPE == "fdroid" diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/di/UiModule.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/di/UiModule.kt index 5c147379b2..9845ec2d5b 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/di/UiModule.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/di/UiModule.kt @@ -10,6 +10,7 @@ import kotlinx.coroutines.MainScope import net.mullvad.mullvadvpn.BuildConfig import net.mullvad.mullvadvpn.applist.ApplicationsProvider import net.mullvad.mullvadvpn.compose.state.RelayListType +import net.mullvad.mullvadvpn.constant.IS_FDROID_BUILD import net.mullvad.mullvadvpn.constant.IS_PLAY_BUILD import net.mullvad.mullvadvpn.dataproxy.MullvadProblemReport import net.mullvad.mullvadvpn.lib.payment.PaymentProvider @@ -194,23 +195,31 @@ val uiModule = module { viewModel { AccountViewModel(get(), get(), get(), IS_PLAY_BUILD) } viewModel { ChangelogViewModel(get(), get(), get()) } viewModel { - AppInfoViewModel(get(), get(), get(), IS_PLAY_BUILD, get(named(SELF_PACKAGE_NAME))) + AppInfoViewModel( + changelogRepository = get(), + appVersionInfoRepository = get(), + resources = get(), + isPlayBuild = IS_PLAY_BUILD, + isFdroidBuild = IS_FDROID_BUILD, + packageName = get(named(SELF_PACKAGE_NAME)), + ) } viewModel { ConnectViewModel( - get(), - get(), - get(), - get(), - get(), - get(), - get(), - get(), - get(), - get(), - get(), - IS_PLAY_BUILD, - get(named(SELF_PACKAGE_NAME)), + accountRepository = get(), + deviceRepository = get(), + changelogRepository = get(), + inAppNotificationController = get(), + newDeviceRepository = get(), + selectedLocationTitleUseCase = get(), + outOfTimeUseCase = get(), + paymentUseCase = get(), + connectionProxy = get(), + lastKnownLocationUseCase = get(), + resources = get(), + isPlayBuild = IS_PLAY_BUILD, + isFdroidBuild = IS_FDROID_BUILD, + packageName = get(named(SELF_PACKAGE_NAME)), ) } viewModel { DeviceListViewModel(get(), get()) } diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/AppInfoViewModel.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/AppInfoViewModel.kt index 8e5ec24a14..6f5fad6dba 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/AppInfoViewModel.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/AppInfoViewModel.kt @@ -22,6 +22,7 @@ class AppInfoViewModel( appVersionInfoRepository: AppVersionInfoRepository, private val resources: Resources, private val isPlayBuild: Boolean, + private val isFdroidBuild: Boolean, private val packageName: String, ) : ViewModel() { @@ -45,7 +46,7 @@ class AppInfoViewModel( fun openAppListing() = viewModelScope.launch { val uri = - if (isPlayBuild) { + if (isPlayBuild || isFdroidBuild) { resources.getString(R.string.market_uri, packageName) } else { resources.getString(R.string.download_url) diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/ConnectViewModel.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/ConnectViewModel.kt index 0ddbd7d724..6e8b3f9009 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/ConnectViewModel.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/ConnectViewModel.kt @@ -52,6 +52,7 @@ class ConnectViewModel( lastKnownLocationUseCase: LastKnownLocationUseCase, private val resources: Resources, private val isPlayBuild: Boolean, + private val isFdroidBuild: Boolean, private val packageName: String, ) : ViewModel() { private val _uiSideEffect = Channel<UiSideEffect>() @@ -182,7 +183,7 @@ class ConnectViewModel( fun openAppListing() = viewModelScope.launch { val uri = - if (isPlayBuild) { + if (isPlayBuild || isFdroidBuild) { resources.getString(R.string.market_uri, packageName) } else { resources.getString(R.string.download_url) diff --git a/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/ConnectViewModelTest.kt b/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/ConnectViewModelTest.kt index 1206af7152..5950f6475f 100644 --- a/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/ConnectViewModelTest.kt +++ b/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/ConnectViewModelTest.kt @@ -127,6 +127,7 @@ class ConnectViewModelTest { lastKnownLocationUseCase = mockLastKnownLocationUseCase, resources = mockk(), isPlayBuild = false, + isFdroidBuild = false, packageName = "net.mullvad.mullvadvpn", ) } |
