summaryrefslogtreecommitdiffhomepage
path: root/android
diff options
context:
space:
mode:
authorAlbin <albin@mullvad.net>2023-02-08 10:49:11 +0100
committerAlbin <albin@mullvad.net>2023-02-08 10:52:45 +0100
commit202c1185ba055440987350472cafe905fc7a0a5f (patch)
treed6878b972e58b0ac816b31058f89169c9ecd1269 /android
parent0495d346e24e2ebde62969487f9498ba2fe5f0bf (diff)
downloadmullvadvpn-202c1185ba055440987350472cafe905fc7a0a5f.tar.xz
mullvadvpn-202c1185ba055440987350472cafe905fc7a0a5f.zip
Expose settings custom dns via repository
Diffstat (limited to 'android')
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/repository/SettingsRepository.kt13
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/serviceconnection/CustomDns.kt6
2 files changed, 19 insertions, 0 deletions
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/repository/SettingsRepository.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/repository/SettingsRepository.kt
new file mode 100644
index 0000000000..926c3543d3
--- /dev/null
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/repository/SettingsRepository.kt
@@ -0,0 +1,13 @@
+package net.mullvad.mullvadvpn.repository
+
+import net.mullvad.mullvadvpn.model.DnsOptions
+import net.mullvad.mullvadvpn.ui.serviceconnection.ServiceConnectionManager
+import net.mullvad.mullvadvpn.ui.serviceconnection.customDns
+
+class SettingsRepository(
+ private val serviceConnectionManager: ServiceConnectionManager
+) {
+ fun setDnsOptions(dnsOptions: DnsOptions) {
+ serviceConnectionManager.customDns()?.setDnsOptions(dnsOptions)
+ }
+}
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/serviceconnection/CustomDns.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/serviceconnection/CustomDns.kt
index 8bfc53f226..9d9e235007 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/serviceconnection/CustomDns.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/serviceconnection/CustomDns.kt
@@ -3,7 +3,9 @@ package net.mullvad.mullvadvpn.ui.serviceconnection
import android.os.Messenger
import java.net.InetAddress
import net.mullvad.mullvadvpn.ipc.Request
+import net.mullvad.mullvadvpn.model.DnsOptions
import net.mullvad.mullvadvpn.model.DnsState
+import net.mullvad.mullvadvpn.util.trySendRequest
import net.mullvad.talpid.util.EventNotifier
class CustomDns(private val connection: Messenger, private val settingsListener: SettingsListener) {
@@ -57,6 +59,10 @@ class CustomDns(private val connection: Messenger, private val settingsListener:
connection.send(Request.RemoveCustomDnsServer(server).message)
}
+ fun setDnsOptions(dnsOptions: DnsOptions) {
+ connection.trySendRequest(Request.SetDnsOptions(dnsOptions), false)
+ }
+
fun onDestroy() {
onEnabledChanged.unsubscribeAll()
onDnsServersChanged.unsubscribeAll()