|
|
@@ -7,6 +7,7 @@ import android.view.View
|
|
|
import android.view.ViewGroup
|
|
|
import androidx.core.view.setPadding
|
|
|
import androidx.fragment.app.activityViewModels
|
|
|
+import androidx.lifecycle.lifecycleScope
|
|
|
import io.legado.app.R
|
|
|
import io.legado.app.base.BaseDialogFragment
|
|
|
import io.legado.app.constant.AppLog
|
|
|
@@ -19,13 +20,26 @@ import io.legado.app.help.coroutine.Coroutine
|
|
|
import io.legado.app.lib.dialogs.alert
|
|
|
import io.legado.app.lib.theme.primaryColor
|
|
|
import io.legado.app.ui.about.AppLogDialog
|
|
|
-import io.legado.app.utils.*
|
|
|
+import io.legado.app.utils.GSON
|
|
|
+import io.legado.app.utils.applyTint
|
|
|
+import io.legado.app.utils.dpToPx
|
|
|
+import io.legado.app.utils.isAbsUrl
|
|
|
+import io.legado.app.utils.openUrl
|
|
|
+import io.legado.app.utils.printOnDebug
|
|
|
+import io.legado.app.utils.setLayout
|
|
|
+import io.legado.app.utils.showDialogFragment
|
|
|
+import io.legado.app.utils.toastOnUi
|
|
|
import io.legado.app.utils.viewbindingdelegate.viewBinding
|
|
|
import kotlinx.coroutines.Dispatchers.IO
|
|
|
import kotlinx.coroutines.Dispatchers.Main
|
|
|
import kotlinx.coroutines.launch
|
|
|
import kotlinx.coroutines.withContext
|
|
|
import splitties.views.onClick
|
|
|
+import kotlin.collections.HashMap
|
|
|
+import kotlin.collections.List
|
|
|
+import kotlin.collections.forEachIndexed
|
|
|
+import kotlin.collections.hashMapOf
|
|
|
+import kotlin.collections.set
|
|
|
|
|
|
|
|
|
class SourceLoginDialog : BaseDialogFragment(R.layout.dialog_login, true) {
|
|
|
@@ -140,7 +154,7 @@ class SourceLoginDialog : BaseDialogFragment(R.layout.dialog_login, true) {
|
|
|
}
|
|
|
|
|
|
private fun login(source: BaseSource, loginData: HashMap<String, String>) {
|
|
|
- launch(IO) {
|
|
|
+ lifecycleScope.launch(IO) {
|
|
|
if (loginData.isEmpty()) {
|
|
|
source.removeLoginInfo()
|
|
|
withContext(Main) {
|