Skip to content

Sidebar: etichette e liste smart senza fetch ripetuti (#11, #5) - #59

Merged
ivan-94m merged 2 commits into
mainfrom
claude/hopeful-allen-8p53dl
Oct 4, 2026
Merged

ivan-94m merged 2 commits into
mainfrom
claude/hopeful-allen-8p53dl

Conversation

@ivan-94m

@ivan-94m ivan-94m commented Oct 4, 2026

Copy link
Copy Markdown
Contributor

Seconda parte di #11, più un pezzo di #5.

  • Etichette in sidebar: il conteggio non usa più tag.tasks.filter (che caricava anche tutte le completate di ogni etichetta). Ora esce dallo stesso passaggio di OpenTaskStats sulle aperte già filtrate nello store (byTag, calcolato solo se la sezione Etichette è visibile e aperta).
  • Liste smart (Sidebar e Sfoglia): SavedViewFilters.counts(for:in:) divide le aperte per spazio una sola volta e calcola tutti i badge in un passaggio, invece di filtrare tutte le aperte una volta per riga.
  • Filtro: SavedViewFilters.matcher(now:) calcola il limite della scadenza una sola volta e non più per ogni attività; matches(_:) resta e lo usa.
  • SmartListView ([P0][Perf] Le viste caricano TUTTE le attività e le filtrano in memoria a ogni ridisegno #5): non carica più tutte le attività. Dallo store prende solo lo spazio della lista, e solo le aperte se la lista esclude le completate (openPredicate). Il resto dei filtri si applica in memoria.

Nota: il badge di un'etichetta segue ora lo spazio scelto e non conta le fasi, come gli altri badge.

Test: sidebarTagAndSmartListCounts (etichette eliminate e completate escluse, liste contate per spazio).

🤖 Generated with Claude Code

https://claude.ai/code/session_01C4CtBsVn3SgURMnCdZTkau


Generated by Claude Code

… lista smart filtrata nello store (#11, #5)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C4CtBsVn3SgURMnCdZTkau
@ivan-94m
ivan-94m marked this pull request as ready for review October 4, 2026 00:09
@ivan-94m
ivan-94m merged commit 50ed222 into main Oct 4, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants