diff --git a/res/values/cm_strings.xml b/res/values/cm_strings.xml
index 1a90995ce499b674ca4bc4e07ef265a0ffbfafa0..520933f55316164851ab1e73d458268e9ebf90b3 100644
--- a/res/values/cm_strings.xml
+++ b/res/values/cm_strings.xml
@@ -221,6 +221,9 @@
Sentry User ID
+
+ Quad9 DNS
+
Enable /e/OS Telemetry
Enable automatic bug reporting
@@ -230,8 +233,4 @@
Advanced Privacy
Manage trackers, fake location, hide IP address
-
-
- Quad9
- dns.quad9.net
diff --git a/src/com/android/settings/network/PrivateDnsModeDialogPreference.java b/src/com/android/settings/network/PrivateDnsModeDialogPreference.java
index ae6bd45672d1909562570193385b98f406b35c49..362c003c1db17b16d092a3b25568cddb7b38997f 100644
--- a/src/com/android/settings/network/PrivateDnsModeDialogPreference.java
+++ b/src/com/android/settings/network/PrivateDnsModeDialogPreference.java
@@ -17,6 +17,7 @@ package com.android.settings.network;
import static android.net.ConnectivityManager.PRIVATE_DNS_DEFAULT_MODE_FALLBACK;
import static android.net.ConnectivityManager.PRIVATE_DNS_MODE_OFF;
+import static android.net.ConnectivityManager.PRIVATE_DNS_MODE_QUADNINE;
import static android.net.ConnectivityManager.PRIVATE_DNS_MODE_OPPORTUNISTIC;
import static android.net.ConnectivityManager.PRIVATE_DNS_MODE_PROVIDER_HOSTNAME;
@@ -70,9 +71,6 @@ public class PrivateDnsModeDialogPreference extends CustomDialogPreferenceCompat
// DNS_MODE -> RadioButton id
private static final Map PRIVATE_DNS_MAP;
- // Only used in Settings, update on additions to ConnectivitySettingsUtils
- private static final String PRIVATE_DNS_MODE_QUADNINE = "quadnine";
-
static {
PRIVATE_DNS_MAP = new HashMap<>();
PRIVATE_DNS_MAP.put(PRIVATE_DNS_MODE_OFF, R.id.private_dns_mode_off);
@@ -171,14 +169,6 @@ public class PrivateDnsModeDialogPreference extends CustomDialogPreferenceCompat
final ContentResolver contentResolver = context.getContentResolver();
mMode = getModeFromSettings(context.getContentResolver());
- if (mMode == PRIVATE_DNS_MODE_PROVIDER_HOSTNAME) {
- final String privateDnsHostname = getHostnameFromSettings(contentResolver);
- final String quadNineHostname =
- context.getString(R.string.private_dns_hostname_quadnine);
- if (privateDnsHostname.equals(quadNineHostname)) {
- mMode = PRIVATE_DNS_MODE_QUADNINE;
- }
- }
mEditText = view.findViewById(R.id.private_dns_mode_provider_hostname);
mEditText.addTextChangedListener(this);
@@ -205,22 +195,15 @@ public class PrivateDnsModeDialogPreference extends CustomDialogPreferenceCompat
public void onClick(DialogInterface dialog, int which) {
if (which == DialogInterface.BUTTON_POSITIVE) {
final Context context = getContext();
- String modeToSet = mMode;
if (mMode.equals(PRIVATE_DNS_MODE_PROVIDER_HOSTNAME)) {
// Only clickable if hostname is valid, so we could save it safely
Settings.Global.putString(context.getContentResolver(), HOSTNAME_KEY,
mEditText.getText().toString());
- } else if (mMode == PRIVATE_DNS_MODE_QUADNINE) {
- final String quadNineHostname =
- context.getString(R.string.private_dns_hostname_quadnine);
- Settings.Global.putString(context.getContentResolver(), HOSTNAME_KEY,
- quadNineHostname);
- modeToSet = PRIVATE_DNS_MODE_PROVIDER_HOSTNAME;
}
FeatureFactory.getFactory(context).getMetricsFeatureProvider().action(context,
- SettingsEnums.ACTION_PRIVATE_DNS_MODE, modeToSet);
- Settings.Global.putString(context.getContentResolver(), MODE_KEY, modeToSet);
+ SettingsEnums.ACTION_PRIVATE_DNS_MODE, mMode);
+ Settings.Global.putString(context.getContentResolver(), MODE_KEY, mMode);
}
}
diff --git a/src/com/android/settings/network/PrivateDnsPreferenceController.java b/src/com/android/settings/network/PrivateDnsPreferenceController.java
index 05205663d231521ee44603d460829dad74e1af10..2d00711fde385e78cb4643707c4d111575dac635 100644
--- a/src/com/android/settings/network/PrivateDnsPreferenceController.java
+++ b/src/com/android/settings/network/PrivateDnsPreferenceController.java
@@ -17,6 +17,7 @@
package com.android.settings.network;
import static android.net.ConnectivityManager.PRIVATE_DNS_MODE_OFF;
+import static android.net.ConnectivityManager.PRIVATE_DNS_MODE_QUADNINE;
import static android.net.ConnectivityManager.PRIVATE_DNS_MODE_OPPORTUNISTIC;
import static android.net.ConnectivityManager.PRIVATE_DNS_MODE_PROVIDER_HOSTNAME;
import static android.provider.Settings.Global.PRIVATE_DNS_DEFAULT_MODE;
@@ -64,9 +65,6 @@ public class PrivateDnsPreferenceController extends BasePreferenceController
Settings.Global.getUriFor(PRIVATE_DNS_SPECIFIER),
};
- // Only used in Settings, update on additions to ConnectivitySettingsUtils
- private static final String PRIVATE_DNS_MODE_QUADNINE = "quadnine";
-
private final Handler mHandler;
private final ContentObserver mSettingsObserver;
private final ConnectivityManager mConnectivityManager;
@@ -132,6 +130,9 @@ public class PrivateDnsPreferenceController extends BasePreferenceController
case PRIVATE_DNS_MODE_OFF:
return res.getString(R.string.private_dns_mode_off);
case PRIVATE_DNS_MODE_QUADNINE:
+ return dnsesResolved
+ ? res.getString(R.string.private_dns_mode_quadnine)
+ : res.getString(R.string.private_dns_mode_provider_failure);
case PRIVATE_DNS_MODE_OPPORTUNISTIC:
// TODO (b/79122154) : create a string specifically for this, instead of
// hijacking a string from notifications. This is necessary at this time
@@ -140,17 +141,9 @@ public class PrivateDnsPreferenceController extends BasePreferenceController
return dnsesResolved ? res.getString(R.string.switch_on_text)
: res.getString(R.string.private_dns_mode_opportunistic);
case PRIVATE_DNS_MODE_PROVIDER_HOSTNAME:
- if (!dnsesResolved) {
- return res.getString(R.string.private_dns_mode_provider_failure);
- }
- final String privateDnsHostname =
- PrivateDnsModeDialogPreference.getHostnameFromSettings(cr);
- final String quadNineHostname =
- res.getString(R.string.private_dns_hostname_quadnine);
- if (privateDnsHostname.equals(quadNineHostname)) {
- return res.getString(R.string.private_dns_mode_quadnine);
- }
- return privateDnsHostname;
+ return dnsesResolved
+ ? PrivateDnsModeDialogPreference.getHostnameFromSettings(cr)
+ : res.getString(R.string.private_dns_mode_provider_failure);
}
return "";
}