From c2ff4a28c17e85485cff75fa3017ae569a53f455 Mon Sep 17 00:00:00 2001 From: Mygod Date: Tue, 27 Aug 2024 23:15:37 -0700 Subject: [PATCH] Migrate from values() --- .../com/github/shadowsocks/aidl/ShadowsocksConnection.kt | 2 +- .../main/java/com/github/shadowsocks/database/Profile.kt | 2 +- mobile/src/main/java/com/github/shadowsocks/AppManager.kt | 8 +++++++- .../src/main/java/com/github/shadowsocks/MainActivity.kt | 2 +- .../java/com/github/shadowsocks/QuickToggleShortcut.kt | 2 +- .../com/github/shadowsocks/acl/CustomRulesFragment.kt | 4 ++-- .../main/java/com/github/shadowsocks/bg/TileService.kt | 4 ++-- .../com/github/shadowsocks/tv/MainPreferenceFragment.kt | 2 +- 8 files changed, 16 insertions(+), 10 deletions(-) diff --git a/core/src/main/java/com/github/shadowsocks/aidl/ShadowsocksConnection.kt b/core/src/main/java/com/github/shadowsocks/aidl/ShadowsocksConnection.kt index 691e5080eb..33fbfbe7e6 100644 --- a/core/src/main/java/com/github/shadowsocks/aidl/ShadowsocksConnection.kt +++ b/core/src/main/java/com/github/shadowsocks/aidl/ShadowsocksConnection.kt @@ -70,7 +70,7 @@ class ShadowsocksConnection(private var listenForDeath: Boolean = false) : Servi override fun stateChanged(state: Int, profileName: String?, msg: String?) { val callback = callback ?: return GlobalScope.launch(Dispatchers.Main.immediate) { - callback.stateChanged(BaseService.State.values()[state], profileName, msg) + callback.stateChanged(BaseService.State.entries[state], profileName, msg) } } override fun trafficUpdated(profileId: Long, stats: TrafficStats) { diff --git a/core/src/main/java/com/github/shadowsocks/database/Profile.kt b/core/src/main/java/com/github/shadowsocks/database/Profile.kt index bae60e1066..57994d46f9 100644 --- a/core/src/main/java/com/github/shadowsocks/database/Profile.kt +++ b/core/src/main/java/com/github/shadowsocks/database/Profile.kt @@ -92,7 +92,7 @@ data class Profile( companion object { @JvmStatic @TypeConverter - fun of(value: Int) = values().single { it.persistedValue == value } + fun of(value: Int) = entries.single { it.persistedValue == value } @JvmStatic @TypeConverter fun toInt(status: SubscriptionStatus) = status.persistedValue diff --git a/mobile/src/main/java/com/github/shadowsocks/AppManager.kt b/mobile/src/main/java/com/github/shadowsocks/AppManager.kt index b20e799bd3..4eea2b40a4 100644 --- a/mobile/src/main/java/com/github/shadowsocks/AppManager.kt +++ b/mobile/src/main/java/com/github/shadowsocks/AppManager.kt @@ -33,7 +33,13 @@ import android.graphics.drawable.Drawable import android.os.Bundle import android.util.SparseBooleanArray import android.view.* -import android.widget.* +import android.widget.Filter +import android.widget.Filterable +import android.widget.ImageView +import android.widget.RadioGroup +import android.widget.SearchView +import android.widget.Switch +import android.widget.TextView import androidx.annotation.UiThread import androidx.appcompat.app.AppCompatActivity import androidx.appcompat.widget.Toolbar diff --git a/mobile/src/main/java/com/github/shadowsocks/MainActivity.kt b/mobile/src/main/java/com/github/shadowsocks/MainActivity.kt index 6de2d2e32b..45736f646e 100644 --- a/mobile/src/main/java/com/github/shadowsocks/MainActivity.kt +++ b/mobile/src/main/java/com/github/shadowsocks/MainActivity.kt @@ -120,7 +120,7 @@ class MainActivity : AppCompatActivity(), ShadowsocksConnection.Callback, OnPref private val connection = ShadowsocksConnection(true) override fun onServiceConnected(service: IShadowsocksService) = changeState(try { - BaseService.State.values()[service.state] + BaseService.State.entries[service.state] } catch (_: RemoteException) { BaseService.State.Idle }) diff --git a/mobile/src/main/java/com/github/shadowsocks/QuickToggleShortcut.kt b/mobile/src/main/java/com/github/shadowsocks/QuickToggleShortcut.kt index 744de1174f..d3fae7be5f 100644 --- a/mobile/src/main/java/com/github/shadowsocks/QuickToggleShortcut.kt +++ b/mobile/src/main/java/com/github/shadowsocks/QuickToggleShortcut.kt @@ -55,7 +55,7 @@ class QuickToggleShortcut : Activity(), ShadowsocksConnection.Callback { } override fun onServiceConnected(service: IShadowsocksService) { - val state = BaseService.State.values()[service.state] + val state = BaseService.State.entries[service.state] when { state.canStop -> Core.stopService() state == BaseService.State.Stopped -> Core.startService() diff --git a/mobile/src/main/java/com/github/shadowsocks/acl/CustomRulesFragment.kt b/mobile/src/main/java/com/github/shadowsocks/acl/CustomRulesFragment.kt index 09f4e1cfa6..eea77f7b98 100644 --- a/mobile/src/main/java/com/github/shadowsocks/acl/CustomRulesFragment.kt +++ b/mobile/src/main/java/com/github/shadowsocks/acl/CustomRulesFragment.kt @@ -146,7 +146,7 @@ class CustomRulesFragment : ToolbarFragment(), Toolbar.OnMenuItemClickListener, private fun validate(template: Int = templateSelector.selectedItemPosition, value: Editable = editText.text) { var message = "" - positive.isEnabled = when (Template.values()[template]) { + positive.isEnabled = when (Template.entries[template]) { Template.Generic -> value.toString().run { try { if (Subnet.fromString(this) == null) toPattern() @@ -178,7 +178,7 @@ class CustomRulesFragment : ToolbarFragment(), Toolbar.OnMenuItemClickListener, override fun ret(which: Int) = when (which) { DialogInterface.BUTTON_POSITIVE -> { AclEditResult(editText.text.toString().let { text -> - when (Template.values()[templateSelector.selectedItemPosition]) { + when (Template.entries[templateSelector.selectedItemPosition]) { Template.Generic -> AclItem(text) Template.Domain -> AclItem(IDN.toASCII(text, IDN.ALLOW_UNASSIGNED or IDN.USE_STD3_ASCII_RULES) .replace(".", "\\.").let { "(?:^|\\.)$it\$" }) diff --git a/mobile/src/main/java/com/github/shadowsocks/bg/TileService.kt b/mobile/src/main/java/com/github/shadowsocks/bg/TileService.kt index 91b5a62931..edc31973d2 100644 --- a/mobile/src/main/java/com/github/shadowsocks/bg/TileService.kt +++ b/mobile/src/main/java/com/github/shadowsocks/bg/TileService.kt @@ -44,7 +44,7 @@ class TileService : BaseTileService(), ShadowsocksConnection.Callback { override fun stateChanged(state: BaseService.State, profileName: String?, msg: String?) = updateTile(state) { profileName } override fun onServiceConnected(service: IShadowsocksService) { - updateTile(BaseService.State.values()[service.state]) { service.profileName } + updateTile(BaseService.State.entries[service.state]) { service.profileName } if (tapPending) { tapPending = false toggle() @@ -94,7 +94,7 @@ class TileService : BaseTileService(), ShadowsocksConnection.Callback { private fun toggle() { val service = connection.service - if (service == null) tapPending = true else BaseService.State.values()[service.state].let { state -> + if (service == null) tapPending = true else BaseService.State.entries[service.state].let { state -> when { state.canStop -> Core.stopService() state == BaseService.State.Stopped -> Core.startService() diff --git a/tv/src/main/java/com/github/shadowsocks/tv/MainPreferenceFragment.kt b/tv/src/main/java/com/github/shadowsocks/tv/MainPreferenceFragment.kt index fdb86813cd..198245f728 100644 --- a/tv/src/main/java/com/github/shadowsocks/tv/MainPreferenceFragment.kt +++ b/tv/src/main/java/com/github/shadowsocks/tv/MainPreferenceFragment.kt @@ -108,7 +108,7 @@ class MainPreferenceFragment : LeanbackPreferenceFragmentCompat(), ShadowsocksCo private val connection = ShadowsocksConnection(true) override fun onServiceConnected(service: IShadowsocksService) = changeState(try { - BaseService.State.values()[service.state] + BaseService.State.entries[service.state] } catch (_: RemoteException) { BaseService.State.Idle })