From de270a9171301896849478d72ddbc9ee557bfe75 Mon Sep 17 00:00:00 2001 From: Phillip Thelen Date: Thu, 30 Jun 2022 11:54:25 +0200 Subject: [PATCH] navigating to task list after craeting task from hub --- .../wearos/habitica/ui/activities/MainActivity.kt | 13 ++++++++++++- .../habitica/ui/activities/TaskFormActivity.kt | 4 ++++ .../habitica/ui/activities/TaskListActivity.kt | 3 +-- 3 files changed, 17 insertions(+), 3 deletions(-) diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/MainActivity.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/MainActivity.kt index 648f5ac02..fef8bb62b 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/MainActivity.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/MainActivity.kt @@ -1,7 +1,9 @@ package com.habitrpg.wearos.habitica.ui.activities +import android.app.Activity import android.content.Intent import android.os.Bundle +import androidx.activity.result.contract.ActivityResultContracts import androidx.activity.viewModels import androidx.appcompat.content.res.AppCompatResources import androidx.core.content.ContextCompat @@ -133,8 +135,17 @@ class MainActivity : BaseActivity() { } } + private val openTaskForm = registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { result -> + if (result.resultCode == Activity.RESULT_OK) { + val taskType = result.data?.getStringExtra("task_type")?.let { TaskType.from(it) } + if (taskType != null) { + openTasklist(taskType) + } + } + } + private fun openTaskFormActivity() { - startActivity(Intent(this, TaskFormActivity::class.java)) + openTaskForm.launch(Intent(this, TaskFormActivity::class.java)) } private fun openAvatarActivity() { diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/TaskFormActivity.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/TaskFormActivity.kt index cdf5497b7..30ee04e7a 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/TaskFormActivity.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/TaskFormActivity.kt @@ -1,5 +1,6 @@ package com.habitrpg.wearos.habitica.ui.activities +import android.app.Activity import android.content.Context import android.content.Intent import android.content.res.ColorStateList @@ -75,6 +76,9 @@ class TaskFormActivity : BaseActivity - if (result.resultCode == Activity.RESULT_OK) { val direction = result.data?.getStringExtra("direction") ?.let { TaskDirection.valueOf(it) } @@ -113,7 +112,7 @@ class TaskListActivity : BaseActivity