mirror of
https://github.com/mihonapp/mihon.git
synced 2025-11-09 10:38:56 +01:00
Remove unused LoginSource
This commit is contained in:
@@ -1,57 +0,0 @@
|
||||
package eu.kanade.tachiyomi.widget.preference
|
||||
|
||||
import android.content.Context
|
||||
import android.graphics.Color
|
||||
import android.util.AttributeSet
|
||||
import android.view.View
|
||||
import androidx.preference.CheckBoxPreference
|
||||
import androidx.preference.PreferenceViewHolder
|
||||
import eu.kanade.tachiyomi.R
|
||||
import eu.kanade.tachiyomi.source.online.HttpSource
|
||||
import eu.kanade.tachiyomi.source.online.LoginSource
|
||||
import eu.kanade.tachiyomi.util.system.getResourceColor
|
||||
import eu.kanade.tachiyomi.util.view.setVectorCompat
|
||||
import kotlinx.android.synthetic.main.pref_item_source.view.login
|
||||
import kotlinx.android.synthetic.main.pref_item_source.view.login_frame
|
||||
|
||||
class LoginCheckBoxPreference @JvmOverloads constructor(
|
||||
context: Context,
|
||||
val source: HttpSource,
|
||||
attrs: AttributeSet? = null
|
||||
) : CheckBoxPreference(context, attrs) {
|
||||
|
||||
init {
|
||||
layoutResource = R.layout.pref_item_source
|
||||
}
|
||||
|
||||
private var onLoginClick: () -> Unit = {}
|
||||
|
||||
override fun onBindViewHolder(holder: PreferenceViewHolder) {
|
||||
super.onBindViewHolder(holder)
|
||||
val loginFrame = holder.itemView.login_frame
|
||||
if (source is LoginSource) {
|
||||
val tint = if (source.isLogged())
|
||||
Color.argb(255, 76, 175, 80)
|
||||
else
|
||||
context.getResourceColor(android.R.attr.textColorSecondary)
|
||||
|
||||
holder.itemView.login.setVectorCompat(R.drawable.ic_account_circle_black_24dp, tint)
|
||||
|
||||
loginFrame.visibility = View.VISIBLE
|
||||
loginFrame.setOnClickListener {
|
||||
onLoginClick()
|
||||
}
|
||||
} else {
|
||||
loginFrame.visibility = View.GONE
|
||||
}
|
||||
}
|
||||
|
||||
fun setOnLoginClickListener(block: () -> Unit) {
|
||||
onLoginClick = block
|
||||
}
|
||||
|
||||
// Make method public
|
||||
public override fun notifyChanged() {
|
||||
super.notifyChanged()
|
||||
}
|
||||
}
|
||||
@@ -1,71 +0,0 @@
|
||||
package eu.kanade.tachiyomi.widget.preference
|
||||
|
||||
import android.os.Bundle
|
||||
import android.view.View
|
||||
import eu.kanade.tachiyomi.R
|
||||
import eu.kanade.tachiyomi.source.Source
|
||||
import eu.kanade.tachiyomi.source.SourceManager
|
||||
import eu.kanade.tachiyomi.source.online.LoginSource
|
||||
import eu.kanade.tachiyomi.util.system.toast
|
||||
import kotlinx.android.synthetic.main.pref_account_login.view.dialog_title
|
||||
import kotlinx.android.synthetic.main.pref_account_login.view.login
|
||||
import kotlinx.android.synthetic.main.pref_account_login.view.password
|
||||
import kotlinx.android.synthetic.main.pref_account_login.view.username
|
||||
import rx.android.schedulers.AndroidSchedulers
|
||||
import rx.schedulers.Schedulers
|
||||
import uy.kohesive.injekt.Injekt
|
||||
import uy.kohesive.injekt.api.get
|
||||
|
||||
class SourceLoginDialog(bundle: Bundle? = null) : LoginDialogPreference(bundle) {
|
||||
|
||||
private val source = Injekt.get<SourceManager>().get(args.getLong("key")) as LoginSource
|
||||
|
||||
constructor(source: Source) : this(Bundle().apply { putLong("key", source.id) })
|
||||
|
||||
override fun setCredentialsOnView(view: View) = with(view) {
|
||||
dialog_title.text = context.getString(R.string.login_title, source.toString())
|
||||
username.setText(preferences.sourceUsername(source))
|
||||
password.setText(preferences.sourcePassword(source))
|
||||
}
|
||||
|
||||
override fun checkLogin() {
|
||||
requestSubscription?.unsubscribe()
|
||||
|
||||
v?.apply {
|
||||
if (username.text.isEmpty() || password.text.isEmpty())
|
||||
return
|
||||
|
||||
login.progress = 1
|
||||
|
||||
requestSubscription = source.login(username.text.toString(), password.text.toString())
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe({ logged ->
|
||||
if (logged) {
|
||||
preferences.setSourceCredentials(source,
|
||||
username.text.toString(),
|
||||
password.text.toString())
|
||||
|
||||
dialog?.dismiss()
|
||||
context.toast(R.string.login_success)
|
||||
} else {
|
||||
preferences.setSourceCredentials(source, "", "")
|
||||
login.progress = -1
|
||||
}
|
||||
}, { error ->
|
||||
login.progress = -1
|
||||
login.setText(R.string.unknown_error)
|
||||
error.message?.let { context.toast(it) }
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
override fun onDialogClosed() {
|
||||
super.onDialogClosed()
|
||||
(targetController as? Listener)?.loginDialogClosed(source)
|
||||
}
|
||||
|
||||
interface Listener {
|
||||
fun loginDialogClosed(source: LoginSource)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user