From 6820ffcc662d44a7ccd2ac01562f1e8765a20221 Mon Sep 17 00:00:00 2001 From: Phillip Thelen Date: Fri, 14 Jun 2019 11:10:45 +0200 Subject: [PATCH] Fix task editing. Fixes #1190 --- .../fragments/tasks/TaskRecyclerViewFragment.kt | 15 ++------------- .../habitica/ui/fragments/tasks/TasksFragment.kt | 8 +++----- 2 files changed, 5 insertions(+), 18 deletions(-) diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/tasks/TaskRecyclerViewFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/tasks/TaskRecyclerViewFragment.kt index 9e811c194..ab9617480 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/tasks/TaskRecyclerViewFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/tasks/TaskRecyclerViewFragment.kt @@ -294,17 +294,6 @@ open class TaskRecyclerViewFragment : BaseFragment(), androidx.swiperefreshlayou outState.putString(CLASS_TYPE_KEY, this.classType) } - override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { - super.onActivityResult(requestCode, resultCode, data) - - when (requestCode) { - TasksFragment.TASK_CREATED_RESULT -> { - TasksFragment.displayingTaskForm = false - } - TasksFragment.TASK_UPDATED_RESULT -> TasksFragment.displayingTaskForm = false - } - } - override val displayedClassName: String? get() = this.classType + super.displayedClassName @@ -326,7 +315,7 @@ open class TaskRecyclerViewFragment : BaseFragment(), androidx.swiperefreshlayou } private fun openTaskForm(task: Task) { - if (TasksFragment.displayingTaskForm) { + if (Date().time - (TasksFragment.lastTaskFormOpen?.time ?: 0) < 2000) { return } @@ -336,7 +325,7 @@ open class TaskRecyclerViewFragment : BaseFragment(), androidx.swiperefreshlayou val intent = Intent(activity, TaskFormActivity::class.java) intent.putExtras(bundle) - TasksFragment.displayingTaskForm = true + TasksFragment.lastTaskFormOpen = Date() if (isAdded) { startActivityForResult(intent, TasksFragment.TASK_UPDATED_RESULT) } diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/tasks/TasksFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/tasks/TasksFragment.kt index 1cb92b48f..fe1bd654a 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/tasks/TasksFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/tasks/TasksFragment.kt @@ -254,7 +254,7 @@ class TasksFragment : BaseMainFragment() { // endregion private fun openNewTaskActivity(type: String) { - if (displayingTaskForm) { + if (Date().time - (lastTaskFormOpen?.time ?: 0) < 2000) { return } @@ -276,7 +276,7 @@ class TasksFragment : BaseMainFragment() { intent.putExtras(bundle) intent.flags = Intent.FLAG_ACTIVITY_REORDER_TO_FRONT if (this.isAdded) { - displayingTaskForm = true + lastTaskFormOpen = Date() startActivityForResult(intent, TASK_CREATED_RESULT) } } @@ -288,10 +288,8 @@ class TasksFragment : BaseMainFragment() { when (requestCode) { TASK_CREATED_RESULT -> { - displayingTaskForm = false onTaskCreatedResult(resultCode, data) } - TASK_UPDATED_RESULT -> displayingTaskForm = false } } @@ -330,7 +328,7 @@ class TasksFragment : BaseMainFragment() { override fun addToBackStack(): Boolean = false companion object { - var displayingTaskForm: Boolean = false + var lastTaskFormOpen: Date? = null internal const val TASK_CREATED_RESULT = 1 const val TASK_UPDATED_RESULT = 2 }