From 1a2fb4d6394e48e84ffbaea6428d3c7beedec8e9 Mon Sep 17 00:00:00 2001 From: tonyjs Date: Tue, 18 Jul 2017 11:12:15 +0900 Subject: [PATCH] fix postOnMainThread.jobCondition, Boolean to Unit.Boolean --- .../main/kotlin/com/tonyjs/hibiscus/ui/MainActivity.kt | 10 +++++----- app/src/main/kotlin/com/tonyjs/hibiscus/ui/Utils.kt | 6 +++--- .../hibiscus/ui/post/create/CreatePostFragment.kt | 4 ++-- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/app/src/main/kotlin/com/tonyjs/hibiscus/ui/MainActivity.kt b/app/src/main/kotlin/com/tonyjs/hibiscus/ui/MainActivity.kt index 20446a7..7218c6f 100644 --- a/app/src/main/kotlin/com/tonyjs/hibiscus/ui/MainActivity.kt +++ b/app/src/main/kotlin/com/tonyjs/hibiscus/ui/MainActivity.kt @@ -183,7 +183,7 @@ class MainActivity : AppCompatActivity(), LifecycleRegistryOwner { messageViewModel.write(getString(R.string.desc_my_nickname, nickname()), Message.From.HUMAN) - postToMainThread(runCondition = isAlive(lifecycle), delayMillis = 1000L) { + postToMainThread(runCondition = { isAlive(lifecycle) }, delayMillis = 1000L) { messageViewModel.write(getString(R.string.ok_wait_a_minute), Message.From.BOT) } @@ -201,7 +201,7 @@ class MainActivity : AppCompatActivity(), LifecycleRegistryOwner { LOG.e(TAG, error) messageViewModel.write(getString(R.string.error_on_sign_in), Message.From.BOT) - postToMainThread(runCondition = isAlive(lifecycle), delayMillis = 1000L) { + postToMainThread(runCondition = { isAlive(lifecycle) }, delayMillis = 1000L) { navigationViewModel.moveTo(NavigationTo.SIGN_IN) } }).apply { addDisposable(this) } @@ -212,7 +212,7 @@ class MainActivity : AppCompatActivity(), LifecycleRegistryOwner { messageViewModel.write(getString(R.string.welcome_user, user.nickname), Message.From.BOT) - postToMainThread(runCondition = isAlive(lifecycle), delayMillis = 1000L) { + postToMainThread(runCondition = { isAlive(lifecycle) }, delayMillis = 1000L) { navigationViewModel.moveTo(NavigationTo.GUIDE_TO_CREATE_POST) } } @@ -244,7 +244,7 @@ class MainActivity : AppCompatActivity(), LifecycleRegistryOwner { .subscribe({ val delay = 1000L - (System.currentTimeMillis() - startTime) - postToMainThread(runCondition = isAlive(lifecycle), delayMillis = delay) { + postToMainThread(runCondition = { isAlive(lifecycle) }, delayMillis = delay) { guideToNext(it) } }, { error -> @@ -284,7 +284,7 @@ class MainActivity : AppCompatActivity(), LifecycleRegistryOwner { private fun addFragment(fragment: Fragment, tag: String, toBackStack: Boolean = false, transition: Int = FragmentTransaction.TRANSIT_FRAGMENT_OPEN) { - postToMainThread(runCondition = isAlive(lifecycle)) { + postToMainThread(runCondition = { isAlive(lifecycle) }) { supportFragmentManager.findFragmentByTag(tag)?.let { return@postToMainThread } val ft = supportFragmentManager.beginTransaction() diff --git a/app/src/main/kotlin/com/tonyjs/hibiscus/ui/Utils.kt b/app/src/main/kotlin/com/tonyjs/hibiscus/ui/Utils.kt index 9f71f4a..b874d4d 100644 --- a/app/src/main/kotlin/com/tonyjs/hibiscus/ui/Utils.kt +++ b/app/src/main/kotlin/com/tonyjs/hibiscus/ui/Utils.kt @@ -12,10 +12,10 @@ import com.bumptech.glide.load.resource.bitmap.BitmapTransformation import io.reactivex.android.schedulers.AndroidSchedulers import java.util.concurrent.TimeUnit -inline fun postToMainThread(runCondition: Boolean = true, delayMillis: Long = 0L, - crossinline job: () -> Unit) { +fun postToMainThread(runCondition: () -> Boolean, delayMillis: Long = 0L, + job: () -> Unit) { val withCondition = { - if (runCondition) { + if (runCondition.invoke()) { job() } } diff --git a/app/src/main/kotlin/com/tonyjs/hibiscus/ui/post/create/CreatePostFragment.kt b/app/src/main/kotlin/com/tonyjs/hibiscus/ui/post/create/CreatePostFragment.kt index a8e5cff..527dc15 100644 --- a/app/src/main/kotlin/com/tonyjs/hibiscus/ui/post/create/CreatePostFragment.kt +++ b/app/src/main/kotlin/com/tonyjs/hibiscus/ui/post/create/CreatePostFragment.kt @@ -179,7 +179,7 @@ class CreatePostFragment : BaseFragment() { } private fun showPhotoList() { - postToMainThread(runCondition = isAlive(lifecycle)) { + postToMainThread(runCondition = { isAlive(lifecycle) }) { childFragmentManager.findFragmentByTag(PhotoListFragment.TAG)?.let { (it as PhotoListFragment).dialog.show() return@postToMainThread @@ -190,7 +190,7 @@ class CreatePostFragment : BaseFragment() { } private fun hidePhotoList() { - postToMainThread(runCondition = isAlive(lifecycle)) { + postToMainThread(runCondition = { isAlive(lifecycle) }) { childFragmentManager.findFragmentByTag(PhotoListFragment.TAG)?.let { (it as PhotoListFragment).dialog.hide() }