Remove unusable interfaces from suggestions
This commit is contained in:
@@ -30,8 +30,6 @@ import timber.log.Timber
|
|||||||
import java.io.File
|
import java.io.File
|
||||||
import java.io.IOException
|
import java.io.IOException
|
||||||
import java.io.PrintWriter
|
import java.io.PrintWriter
|
||||||
import java.net.NetworkInterface
|
|
||||||
import java.net.SocketException
|
|
||||||
import kotlin.system.exitProcess
|
import kotlin.system.exitProcess
|
||||||
|
|
||||||
class SettingsPreferenceFragment : PreferenceFragmentCompat() {
|
class SettingsPreferenceFragment : PreferenceFragmentCompat() {
|
||||||
@@ -178,20 +176,9 @@ class SettingsPreferenceFragment : PreferenceFragmentCompat() {
|
|||||||
when (preference.key) {
|
when (preference.key) {
|
||||||
UpstreamMonitor.KEY, FallbackUpstreamMonitor.KEY ->
|
UpstreamMonitor.KEY, FallbackUpstreamMonitor.KEY ->
|
||||||
AlwaysAutoCompleteEditTextPreferenceDialogFragment().apply {
|
AlwaysAutoCompleteEditTextPreferenceDialogFragment().apply {
|
||||||
setArguments(preference.key, try {
|
setArguments(preference.key, app.connectivity.allNetworks.mapNotNull {
|
||||||
NetworkInterface.getNetworkInterfaces().asSequence()
|
app.connectivity.getLinkProperties(it)?.interfaceName
|
||||||
.filter {
|
}.toTypedArray())
|
||||||
try {
|
|
||||||
it.isUp && !it.isLoopback && it.interfaceAddresses.isNotEmpty()
|
|
||||||
} catch (_: SocketException) {
|
|
||||||
false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.map { it.name }.sorted().toList().toTypedArray()
|
|
||||||
} catch (e: SocketException) {
|
|
||||||
Timber.d(e)
|
|
||||||
emptyArray<String>()
|
|
||||||
})
|
|
||||||
setTargetFragment(this@SettingsPreferenceFragment, 0)
|
setTargetFragment(this@SettingsPreferenceFragment, 0)
|
||||||
}.show(parentFragmentManager, preference.key)
|
}.show(parentFragmentManager, preference.key)
|
||||||
else -> super.onDisplayPreferenceDialog(preference)
|
else -> super.onDisplayPreferenceDialog(preference)
|
||||||
|
|||||||
Reference in New Issue
Block a user