Add DohPreference

This commit is contained in:
tarsin committed 2023-05-28 18:37:50 +08:00
1 parent cbccf7e7fa
commit 512e961820
3 files changed
+25 -1

No files matched your search

@@ -0,0 +1,19 @@
package com.hippo.ehviewer.preference
import android.content.Context
import android.util.AttributeSet
import androidx.preference.Preference
import com.hippo.ehviewer.R
import com.hippo.ehviewer.Settings
import com.hippo.ehviewer.ui.legacy.EditTextDialogBuilder
class DohPreference @JvmOverloads constructor(
context: Context,
attrs: AttributeSet? = null,
) : Preference(context, attrs) {
override fun onClick() {
val builder = EditTextDialogBuilder(context, Settings.dohUrl, context.getString(R.string.settings_advanced_dns_over_http_hint))
builder.setTitle(R.string.settings_advanced_dns_over_http_title)
builder.setPositiveButton(android.R.string.ok) { _, _ -> Settings.putDohUrl(builder.text.trim()) }.show()
}
}
+2
View File
@@ -423,6 +423,8 @@
<string name="settings_advanced_proxy_summary_1">%1$s %2$s:%3$d</string>
<string name="settings_advanced_proxy_summary_2">%1$s</string>
<string name="settings_advanced_built_in_hosts_title">Built-in hosts.txt</string>
<string name="settings_advanced_dns_over_http_title">DNS Over HTTPS</string>
<string name="settings_advanced_dns_over_http_hint">Server URL, blank: disable</string>
<string name="settings_advanced_built_in_hosts_summary">Apply the built-in host-to-IP mapping provided by the app.\nIt can be overridden by custom hosts.txt.</string>
<string name="settings_advanced_domain_fronting_title">Domain fronting</string>
<string name="settings_advanced_domain_fronting_summary">Bypass SNI blocking.</string>
+4 -1
View File
@@ -63,10 +63,13 @@
<rikka.material.preference.MaterialSwitchPreference
android:defaultValue="false"
android:key="built_in_hosts_2"
android:summary="@string/settings_advanced_built_in_hosts_summary"
android:title="@string/settings_advanced_built_in_hosts_title"
app:iconSpaceReserved="false" />
<com.hippo.ehviewer.preference.DohPreference
android:title="@string/settings_advanced_dns_over_http_title"
android:iconSpaceReserved="false"/>
<rikka.material.preference.MaterialSwitchPreference
android:defaultValue="false"
android:key="domain_fronting"