summaryrefslogtreecommitdiffhomepage
path: root/android/app/src/main
diff options
context:
space:
mode:
authorDavid Göransson <david.goransson@mullvad.net>2024-04-19 10:37:13 +0200
committerDavid Göransson <david.goransson@mullvad.net>2024-04-19 11:26:23 +0200
commit28563f3980e234775bb8574d979537e299305ac8 (patch)
treee6d1080753b151a5086d9e88896c75d8822f0626 /android/app/src/main
parent5815716fcf1262699866c251cf0d3b9b7e7f3af2 (diff)
downloadmullvadvpn-28563f3980e234775bb8574d979537e299305ac8.tar.xz
mullvadvpn-28563f3980e234775bb8574d979537e299305ac8.zip
Fix duplicate entries when adding through bottom sheet
Diffstat (limited to 'android/app/src/main')
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/SelectLocationViewModel.kt4
1 files changed, 3 insertions, 1 deletions
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/SelectLocationViewModel.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/SelectLocationViewModel.kt
index 1759055bda..9772fb6362 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/SelectLocationViewModel.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/SelectLocationViewModel.kt
@@ -19,6 +19,7 @@ import net.mullvad.mullvadvpn.model.Constraint
import net.mullvad.mullvadvpn.model.Ownership
import net.mullvad.mullvadvpn.relaylist.Provider
import net.mullvad.mullvadvpn.relaylist.RelayItem
+import net.mullvad.mullvadvpn.relaylist.descendants
import net.mullvad.mullvadvpn.relaylist.filterOnOwnershipAndProvider
import net.mullvad.mullvadvpn.relaylist.filterOnSearchTerm
import net.mullvad.mullvadvpn.relaylist.toLocationConstraint
@@ -137,7 +138,8 @@ class SelectLocationViewModel(
fun addLocationToList(item: RelayItem, customList: RelayItem.CustomList) {
viewModelScope.launch {
- val newLocations = (customList.locations + item).map { it.code }
+ val newLocations =
+ (customList.locations + item).filter { it !in item.descendants() }.map { it.code }
val result =
customListActionUseCase.performAction(
CustomListAction.UpdateLocations(customList.id, newLocations)