Merge pull request #1825 from Hafizzle/Hafiz/default-dailies-active-fix

Fix default dailies filter
This commit is contained in:
Phillip Thelen 2022-08-10 09:47:01 +02:00 committed by GitHub
commit 5265761e2b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 25 additions and 20 deletions

View file

@ -321,6 +321,8 @@ open class TaskRecyclerViewFragment : BaseFragment<FragmentRefreshRecyclerviewBi
.doOnNext { recyclerAdapter?.showAdventureGuide = !it.hasCompletedOnboarding }
.subscribe({ recyclerAdapter?.user = it }, RxErrorHandler.handleEmptyError())
)
setPreferenceTaskFilters()
}
private fun updateTaskSubscription(ownerID: String?) {
@ -458,26 +460,6 @@ open class TaskRecyclerViewFragment : BaseFragment<FragmentRefreshRecyclerviewBi
}
}
override fun onStart() {
super.onStart()
(activity as? MainActivity)?.viewModel?.user?.observeOnce(this) {
if (it != null) {
when (taskType) {
TaskType.TODO -> viewModel.setActiveFilter(
TaskType.TODO,
Task.FILTER_ACTIVE
)
TaskType.DAILY -> {
if (it.isValid && it.preferences?.dailyDueDefaultView == true) {
viewModel.setActiveFilter(TaskType.DAILY, Task.FILTER_ACTIVE)
}
}
else -> {}
}
}
}
}
override fun onResume() {
super.onResume()
context?.let { recyclerAdapter?.taskDisplayMode = configManager.taskDisplayMode(it) }
@ -496,6 +478,28 @@ open class TaskRecyclerViewFragment : BaseFragment<FragmentRefreshRecyclerviewBi
}
}
private fun setPreferenceTaskFilters() {
(activity as? MainActivity)?.viewModel?.user?.observeOnce(this) {
if (it != null) {
when (taskType) {
TaskType.TODO -> viewModel.setActiveFilter(
TaskType.TODO,
Task.FILTER_ACTIVE
)
TaskType.DAILY -> {
if (!viewModel.initialPreferenceFilterSet) {
viewModel.initialPreferenceFilterSet = true
if (it.isValid && it.preferences?.dailyDueDefaultView == true) {
viewModel.setActiveFilter(TaskType.DAILY, Task.FILTER_ACTIVE)
}
}
}
else -> {}
}
}
}
}
private fun openTaskForm(task: Task) {
if (Date().time - (TasksFragment.lastTaskFormOpen?.time ?: 0) < 2000 || !task.isValid || !canEditTasks) {
return

View file

@ -49,6 +49,7 @@ class TasksViewModel : BaseViewModel() {
val ownerID: MutableLiveData<String?> by lazy {
MutableLiveData()
}
var initialPreferenceFilterSet: Boolean = false
val isPersonalBoard: Boolean
get() {