fix showing death dialog

This commit is contained in:
Phillip Thelen 2022-07-28 11:54:52 +02:00
parent 9ea87f93e7
commit c4b5664931
2 changed files with 5 additions and 7 deletions

View file

@ -12,9 +12,7 @@ import com.habitrpg.wearos.habitica.data.repositories.TaskRepository
import com.habitrpg.wearos.habitica.data.repositories.UserRepository
import com.habitrpg.wearos.habitica.ui.activities.BaseActivity
import com.habitrpg.wearos.habitica.ui.activities.FaintActivity
import com.habitrpg.wearos.habitica.ui.activities.MainActivity
import com.habitrpg.wearos.habitica.ui.activities.RYAActivity
import com.habitrpg.wearos.habitica.ui.activities.TaskResultActivity
import dagger.hilt.android.HiltAndroidApp
import kotlinx.coroutines.MainScope
import kotlinx.coroutines.flow.collect
@ -36,11 +34,11 @@ class MainApplication : Application() {
MainScope().launch {
userRepository.getUser().onEach {
if (it.isDead && (BaseActivity.currentActivityClassName == MainActivity::class.java.name) || (BaseActivity.currentActivityClassName == TaskResultActivity::class.java.name)) {
if (it.isDead && BaseActivity.currentActivityClassName != FaintActivity::class.java.name) {
val intent = Intent(this@MainApplication, FaintActivity::class.java)
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
startActivity(intent)
} else if (it.needsCron && BaseActivity.currentActivityClassName == MainActivity::class.java.name) {
} else if (it.needsCron && BaseActivity.currentActivityClassName != RYAActivity::class.java.name) {
val intent = Intent(this@MainApplication, RYAActivity::class.java)
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
startActivity(intent)

View file

@ -22,9 +22,9 @@ class ExceptionHandlerBuilder @Inject constructor(val appStateManager: AppStateM
return CoroutineExceptionHandler { _, throwable ->
Log.e("Coroutine Error", "Error: ${throwable.cause}", throwable)
if (throwable is IOException) {
errorPresenter.errorValues.value = throwable.message?.let {
DisplayedError(R.drawable.disconnected, "Disconnected")
}
errorPresenter.errorValues.value = DisplayedError(R.drawable.disconnected, "Disconnected")
} else if (throwable.message == "12501: ") {
errorPresenter.errorValues.value = DisplayedError(R.drawable.error, "There was an error when signing in with Google.")
} else {
errorPresenter.errorValues.value = throwable.message?.let {
DisplayedError(R.drawable.error, it)