aboutsummaryrefslogtreecommitdiffstats
path: root/app/src/main/java/net/lacolaco/smileessence/activity/ManageAccountsActivity.kt
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java/net/lacolaco/smileessence/activity/ManageAccountsActivity.kt')
-rw-r--r--app/src/main/java/net/lacolaco/smileessence/activity/ManageAccountsActivity.kt23
1 files changed, 15 insertions, 8 deletions
diff --git a/app/src/main/java/net/lacolaco/smileessence/activity/ManageAccountsActivity.kt b/app/src/main/java/net/lacolaco/smileessence/activity/ManageAccountsActivity.kt
index 37eec009..21b518d7 100644
--- a/app/src/main/java/net/lacolaco/smileessence/activity/ManageAccountsActivity.kt
+++ b/app/src/main/java/net/lacolaco/smileessence/activity/ManageAccountsActivity.kt
@@ -42,10 +42,12 @@ import net.lacolaco.smileessence.World
import net.lacolaco.smileessence.data.Account
import net.lacolaco.smileessence.data.ImageCache
import net.lacolaco.smileessence.logging.Logger
-import net.lacolaco.smileessence.twitter.OAuthSession
import net.lacolaco.smileessence.view.dialog.ConfirmDialogFragment
import kotlinx.android.synthetic.main.layout_edit_list.*
import kotlinx.android.synthetic.main.list_item_account.view.*
+import kotlinx.coroutines.experimental.android.UI
+import kotlinx.coroutines.experimental.async
+import org.jetbrains.anko.coroutines.experimental.bg
import org.jetbrains.anko.intentFor
import org.jetbrains.anko.startActivityForResult
@@ -156,7 +158,7 @@ class ManageAccountsActivity : Activity(), AdapterView.OnItemClickListener, Adap
}
}
- override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent) {
+ override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
when (requestCode) {
REQUEST_OAUTH -> {
receiveOAuth(requestCode, resultCode, data)
@@ -167,13 +169,18 @@ class ManageAccountsActivity : Activity(), AdapterView.OnItemClickListener, Adap
}
}
- private fun receiveOAuth(requestCode: Int, resultCode: Int, data: Intent) {
+ private fun receiveOAuth(requestCode: Int, resultCode: Int, data: Intent?) {
if (resultCode == Activity.RESULT_OK) {
- val account = Account.register(data.getStringExtra(OAuthSession.KEY_TOKEN),
- data.getStringExtra(OAuthSession.KEY_TOKEN_SECRET),
- data.getLongExtra(OAuthSession.KEY_USER_ID, -1L),
- data.getStringExtra(OAuthSession.KEY_SCREEN_NAME))
- adapter.add(account)
+ async(UI) {
+ data!!
+ adapter.add(bg {
+ Account.register(
+ data.getStringExtra(OAuthActivity.KEY_TOKEN),
+ data.getStringExtra(OAuthActivity.KEY_TOKEN_SECRET),
+ data.getLongExtra(OAuthActivity.KEY_USER_ID, -1L),
+ data.getStringExtra(OAuthActivity.KEY_SCREEN_NAME))
+ }.await())
+ }
} else {
Logger.error(requestCode)
Application.toast(R.string.notice_error_authenticate)