Skip to content

Add option to hide completed tasks - #59

Merged
HelpfulSoft1207 merged 2 commits into
warframe-tools:mainfrom
AnSq:autohide
Jul 29, 2026
Merged

Add option to hide completed tasks#59
HelpfulSoft1207 merged 2 commits into
warframe-tools:mainfrom
AnSq:autohide

Conversation

@AnSq

@AnSq AnSq commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

Implements #40. An alternative to #58.

  • Adds a new "Hide completed tasks" checkbox to the hamburger menu. When checked:
    • Tasks are hidden 5 seconds after being checked
    • A timer bar at the top of the task shrinks over those 5 seconds to warn you
    • When those 5 seconds are up, the task disappears with a collapsing animation, similar to the section/subtask collapsibles, or how the info line already hides when the task is checked
      • This animation is disabled when prefers-reduced-motion is active
  • When the tasks are reset or the option is unchecked, the tasks are unhidden without any delay
  • Works with any level of nested subtask
  • The user's preference is saved to local storage
  • The 5 second delay, the timer bar, and the hiding animation are implemented entirely in CSS. No need for setTimeout or keeping track of timer handles.
  • The only JS changes are:
    • .task-item (which is display: flex) moves one level down to a new <div> element, so that the <li> can become the collapsible container with display: grid for the grid-template-rows animation trick
    • Toggling .hide-completed-tasks on <body> when the option changes
    • Mechanics for saving & loading the setting

Other changes:

  • bump version to 5.2
  • bump game version to 43.0.3 (no changes)
  • fix menu headers having an extra bottom border

Live now at https://ansq.github.io/Warframe-Task-Checklist/

* bump version to 5.2
* bump game version to 43.0.3 (no changes)

+ fix menu headers having an extra bottom border
@HelpfulSoft1207

Copy link
Copy Markdown
Collaborator

I like this way a lot better. I will close mine and we will use this one.

@HelpfulSoft1207 HelpfulSoft1207 added the enhancement New feature or request label Jun 28, 2026
@AnSq AnSq mentioned this pull request Jul 28, 2026
2 tasks
@AnSq
AnSq marked this pull request as draft July 28, 2026 19:24
@AnSq

AnSq commented Jul 28, 2026

Copy link
Copy Markdown
Contributor Author

Superseded by #68.

HelpfulSoft1207 added a commit that referenced this pull request Jul 29, 2026
<!-- Do not delete this section -->
**AI Disclosure:**

<!-- Mark *one* box by putting an 'x' between the brackets, like this: [
] -> [x] -->
- [x] I **did not** use AI for anything in this pull request.
- [ ] I *did* use AI in this pull request, and I have included a
statement of AI use in the commit message of *every* commit where I used
AI.

<!-- ↓↓↓ Add any other information about your use of AI that you wish to
include here ↓↓↓ -->

_____
<!-- ↓↓↓ Write the rest of your pull request below this line ↓↓↓ -->

**This PR builds on #59 and includes all of the changes from that PR
<sup>(closes #63)</sup>, plus the following:**

## New Features

* **Task Skipping:** a new "skip" button next to the hide button on each
task lets you hide the task just for the current cycle
* Skipped tasks are unhidden when the task resets, and when the "Unhide
All Tasks" option is activated
* <details><summary>Screenshot</summary><img width="192" height="175"
alt="Screenshot of skip button"
src="https://github.com/user-attachments/assets/19aef0d0-b71d-425a-b512-d68b7e011ddb"
/></details>
* **List Stats:** task lists (i.e. sections and subtask lists) now have
a "list stats" line that tells you how many tasks are not shown due to
being hidden, skipped, or completed (when "hide completed tasks" is on)
* If the "completed", "skipped", or "hidden" count is zero, it is not
shown
  * If "hide completed tasks" is off, "completed" is not shown
* <details><summary>Screenshot</summary><img width="463" height="552"
alt="Screenshot of list stats"
src="https://github.com/user-attachments/assets/26e5261e-9dd7-4ff0-802b-89f36da028c9"
/></details>
* **Hidden Task Lists:** clicking the list stats opens a dialog where
you can unhide, unskip, or uncheck individual tasks
* <details><summary>Screenshots</summary><img width="511" height="252"
alt="Screenshot of completed dialog"
src="https://github.com/user-attachments/assets/c6bff03c-4d44-460b-a179-9b51e0f54daa"
/><img width="493" height="190" alt="Screenshot of skipped dialog"
src="https://github.com/user-attachments/assets/dd280641-b9d0-4668-abed-d1f70d489268"
/><img width="482" height="221" alt="Screenshot of hidden dialog"
src="https://github.com/user-attachments/assets/706a68e2-140f-4a80-8bff-e898a8cfc58d"
/></details>
* **Persistent Collapses:** The collapsed/expanded state of parent tasks
is now saved.
* **Incomplete Subtask Count:** The number of incomplete subtasks is
displayed next to the parent's collapse button when collapsed.
* <details><summary>Screenshot</summary><img width="447" height="34"
alt="Screenshot of incomplete subtasks"
src="https://github.com/user-attachments/assets/29160f0a-57b3-4530-98e4-4d77e0741bff"
/></details>

## Enhancements

* Hiding a task now uses a collapsing animation (when
`prefers-reduced-motion` is off)
* Task titles are displayed as semibold
* Countdown timers use tabular nums (thanks @Nova0255)

## Bug Fixes

* Parent tasks now become checked when all their subtasks are completed
*or hidden or skipped* (previously only completed)
* Fixed dialog headers incorrectly having a hover effect
* Fixed intermittent tasks sending a notification when they become
unavailable, instead of available

## Code Stuff

* Tasks now define a `title` property, which was formerly the part
before the colon in `text`
  * `title` is now a mandatory task property, and `text` is optional
* Duplicate code cleanup:
* Simplified `createChecklistItem`. A lot of functionality was
duplicated between parent and non-parent tasks
  * checkbox onchange is now `checkboxChangeAction` instead of inline
  * Hide and skip buttons are now handled by `hideOrSkipTaskAction`
* The parent task tree walking behavior has been factored out of the
checkbox change event and now lives in `updateParentCheckboxes`
* `updateParentCheckboxes` is now called when you hide/skip or
unhide/unskip a task
* Added a new test to check if version numbers match between `app.js`,
`package.json`, and `SECURITY.md`.
* Streamlined `loadData`. Properties of `checklistData` are now listed
in only ONE place (`newChecklistData`) instead of two or three.
* Added `forEachTask`
* Rewrote `getTaskById` with `forEachTask`
* Renamed `_prepTasks` to `prepTasks`, and rewrote it with `forEachTask`
* Moved assignment of `task.parentId` from `createChecklistItem` to
`prepTasks`
* `prepTasks` assigns `task.section`
* v5.3
* U43.0.8 (no changes)

---

This PR is equivalent to [this
release](https://github.com/AnSq/Warframe-Task-Checklist/releases/tag/2026-07-28),
which is currently live at
https://ansq.github.io/Warframe-Task-Checklist/
@HelpfulSoft1207
HelpfulSoft1207 merged commit 57ab7a1 into warframe-tools:main Jul 29, 2026
1 check passed
@AnSq
AnSq deleted the autohide branch July 29, 2026 05:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants