summaryrefslogtreecommitdiffhomepage
path: root/android/app/src
diff options
context:
space:
mode:
authorEmīls Piņķis <emils@mullvad.net>2022-08-03 14:44:16 +0300
committerLinus Färnstrand <linus@mullvad.net>2022-08-10 16:22:10 +0200
commitc4683d6a5a6d37280b2ae685c79ccb89d260fdb1 (patch)
tree436b92d4deef092d16fd6fe20691f63fdfa5bf19 /android/app/src
parent4a5604674b32b4b8c53b536963654501eb9fd206 (diff)
downloadmullvadvpn-c4683d6a5a6d37280b2ae685c79ccb89d260fdb1.tar.xz
mullvadvpn-c4683d6a5a6d37280b2ae685c79ccb89d260fdb1.zip
Set state of toggle button immediately
Diffstat (limited to 'android/app/src')
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/AdvancedFragment.kt8
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/serviceconnection/CustomDns.kt4
2 files changed, 12 insertions, 0 deletions
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/AdvancedFragment.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/AdvancedFragment.kt
index 12282c30a9..30b9608a9d 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/AdvancedFragment.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/AdvancedFragment.kt
@@ -206,6 +206,14 @@ class AdvancedFragment : BaseFragment() {
}
customDnsToggle = view.findViewById<ToggleCell>(R.id.enable_custom_dns).apply {
+ state = serviceConnectionManager.customDns().let { customDns ->
+ if (customDns?.isCustomDnsEnabled() == true) {
+ CellSwitch.State.ON
+ } else {
+ CellSwitch.State.OFF
+ }
+ }
+
listener = { state ->
jobTracker.newBackgroundJob("toggleCustomDns") {
if (state == CellSwitch.State.ON) {
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 f33c2967fa..2675c1231a 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
@@ -28,6 +28,10 @@ class CustomDns(private val connection: Messenger, private val settingsListener:
connection.send(Request.SetEnableCustomDns(false).message)
}
+ fun isCustomDnsEnabled(): Boolean {
+ return onEnabledChanged.latestEvent ?: false
+ }
+
fun addDnsServer(server: InetAddress): Boolean {
val didntAlreadyHaveServer = !onDnsServersChanged.latestEvent.contains(server)