Skip to content

History polish: compact overview, distance-first rows, weekly totals - #95

Closed
SamiPr0 wants to merge 7 commits into
feat/history-year-zoomfrom
feat/history-polish
Closed

SamiPr0 wants to merge 7 commits into
feat/history-year-zoomfrom
feat/history-polish

Conversation

@SamiPr0

@SamiPr0 SamiPr0 commented Oct 9, 2026

Copy link
Copy Markdown
Owner

Stacked on #94 (retarget as the earlier PRs merge).

What

  • Compact overview card: one summary line ("5 this week · 4-week streak") and the current week as seven days. A Calendar button expands it to the month calendar (with the year zoom); the entries are visible on opening.
  • Tapping a day scrolls to that day's entry and tints it for a moment, instead of filtering the list. A day without a visit says so in a snackbar.
  • Rows lead with the distance (bold), with the time and swim duration below. Entries without a logged distance lead with the time.
  • Weekly total in each week header ("5 visits · 4.2 km").

Structure

HistoryListModel.kt holds the pure logic (week rows, finding an entry's index, row texts, distance format); WeekStrip.kt is the compact week; HistoryOverview switches between the strip and the calendar.

Tests

Unit tests for the row model, texts, totals, week strip and summary text; screen tests for the compact card, expanding, day taps and the totals. ./gradlew check ktfmtCheck is green locally. Not run on a device/emulator by me: scroll-to-day and the highlight timing need a look.

🤖 Generated with Claude Code

SamiPr0 and others added 7 commits October 9, 2026 17:28
A flat list of week headers and entries with weekly totals, finding an
entry by day, the distance-first row texts and the distance format.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
One summary line (visits this week, week streak) and the current week
as seven days; a Calendar button expands to the month calendar with
its year zoom. Tapping a day no longer filters, it highlights.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Rows lead with the distance, week headers show the week's total
distance, and tapping a day in the overview scrolls to its entry and
tints it, or says there was no visit that day.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Days with one visit start at 70% opacity instead of 30%, since most
days have at most one visit; the year view keeps its wider gradient.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Render four to six weeks as the month needs instead of always six, so
the card no longer has a blank band under the last week.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
The summary is just the visits this week. The year-long grid and its
streak summary only existed for that line, so they go too.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Fills are 40-65% tints for days and 15-60% for months instead of the
full primary color, with the normal text color on top.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@SamiPr0

SamiPr0 commented Oct 9, 2026

Copy link
Copy Markdown
Owner Author

Superseded by #96, which combined this stack and is merged into main (cbab128). Closing; the branch is left in place.

@SamiPr0 SamiPr0 closed this Oct 9, 2026
@SamiPr0
SamiPr0 deleted the feat/history-polish branch October 9, 2026 22:29
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.

1 participant