Implement plugin entirely in Kotlin
This commit is contained in:
@@ -39,7 +39,6 @@ import android.support.v7.app.AppCompatActivity
|
||||
import android.support.v7.content.res.AppCompatResources
|
||||
import android.support.v7.preference.PreferenceDataStore
|
||||
import android.support.v7.widget.TooltipCompat
|
||||
import android.text.TextUtils
|
||||
import android.util.Log
|
||||
import android.view.View
|
||||
import android.widget.TextView
|
||||
@@ -355,7 +354,7 @@ class MainActivity : AppCompatActivity(), ShadowsocksConnection.Interface, Drawe
|
||||
}
|
||||
else -> null
|
||||
}
|
||||
if (TextUtils.isEmpty(sharedStr)) return
|
||||
if (sharedStr.isNullOrEmpty()) return
|
||||
val profiles = Profile.findAll(sharedStr).toList()
|
||||
if (profiles.isEmpty()) {
|
||||
Snackbar.make(findViewById(R.id.snackbar), R.string.profile_invalid_input, Snackbar.LENGTH_LONG).show()
|
||||
|
||||
@@ -143,7 +143,7 @@ class ProfileConfigFragment : PreferenceFragmentCompatDividers(), Toolbar.OnMenu
|
||||
override fun onPreferenceChange(preference: Preference?, newValue: Any?): Boolean = try {
|
||||
val selected = pluginConfiguration.selected
|
||||
pluginConfiguration = PluginConfiguration(pluginConfiguration.pluginsOptions +
|
||||
(pluginConfiguration.selected to PluginOptions(selected, newValue as String?)), selected)
|
||||
(pluginConfiguration.selected to PluginOptions(selected, newValue as? String?)), selected)
|
||||
DataStore.plugin = pluginConfiguration.toString()
|
||||
DataStore.dirty = true
|
||||
true
|
||||
|
||||
@@ -29,7 +29,6 @@ import android.os.Build
|
||||
import android.os.IBinder
|
||||
import android.os.RemoteCallbackList
|
||||
import android.support.v4.os.UserManagerCompat
|
||||
import android.text.TextUtils
|
||||
import android.util.Base64
|
||||
import android.util.Log
|
||||
import android.widget.Toast
|
||||
@@ -218,7 +217,7 @@ object BaseService {
|
||||
fun onBind(intent: Intent): IBinder? = if (intent.action == Action.SERVICE) data.binder else null
|
||||
|
||||
fun checkProfile(profile: Profile): Boolean =
|
||||
if (TextUtils.isEmpty(profile.host) || TextUtils.isEmpty(profile.password)) {
|
||||
if (profile.host.isEmpty() || profile.password.isEmpty()) {
|
||||
stopRunner(true, (this as Context).getString(R.string.proxy_empty))
|
||||
false
|
||||
} else true
|
||||
|
||||
@@ -50,7 +50,7 @@ class PluginConfiguration(val pluginsOptions: Map<String, PluginOptions>, val se
|
||||
})
|
||||
|
||||
fun getOptions(id: String): PluginOptions = if (id.isEmpty()) PluginOptions() else
|
||||
pluginsOptions.get(id) ?: PluginOptions(id, PluginManager.fetchPlugins()[id]?.defaultConfig)
|
||||
pluginsOptions[id] ?: PluginOptions(id, PluginManager.fetchPlugins()[id]?.defaultConfig)
|
||||
val selectedOptions: PluginOptions get() = getOptions(selected)
|
||||
|
||||
override fun toString(): String {
|
||||
|
||||
Reference in New Issue
Block a user