Skip to content

Lay the month calendar like pool tiles - Lay the month calendar like pool tiles - #167

Merged
SalimMc merged 1 commit into
SamiPr0:grand-bain/pool-tile-calendarfrom
SalimMc:feature/pool-tile-calendar
Oct 30, 2026
Merged

SalimMc merged 1 commit into
SamiPr0:grand-bain/pool-tile-calendarfrom
SalimMc:feature/pool-tile-calendar

Conversation

@SalimMc

@SalimMc SalimMc commented Oct 30, 2026

Copy link
Copy Markdown
Collaborator

What

Part of the "Grand bain" redesign: History's month calendar now looks like a pool's tiled floor.

ui/history/heatmap/HeatmapLegend.kt

  • New shared helpers:
    • PoolTileShape: a 6 dp rounded square, the shape of a day tile.
    • emptyTileColor(): onSurface at 6% alpha, a bare tile for a day without entries.
    • groutColor(): primary at 10% alpha, the lines between the tiles.
  • The "Less … More" legend uses small rounded tiles instead of dots, and the same empty-tile color.

ui/history/heatmap/MonthCalendar.kt

  • Days are rounded square tiles instead of circles.
  • The grid sits on a light grout background (10 dp corners, 3 dp padding), so the gaps between tiles read as grout lines.
  • Past and current days without entries keep a faint tile, so the month still reads as a tiled floor. Future days stay empty.
  • The "today" ring follows the tile shape.
  • Behavior is unchanged: swiping, previous/next buttons, tapping a day, test tags and content descriptions.

Tests

  • New PoolTileColorsTest (Robolectric, in both themes) checks that:
    • the empty tile is a faint veil of the text color;
    • the empty tile stays fainter than a day with one entry;
    • the grout is a light tint of the primary color.
  • Ran locally: ./gradlew testDebugUnitTest --tests '*.ui.history.*' and ktfmtCheck. All the new tests pass.
  • On a French-locale machine, HistoryListModelTest fails twice (4,2 km instead of 4.2 km). That failure already exists on main and is not related to this PR. With an English locale, everything passes.

How to review

  • Open History → month view: the days should look like pool tiles on light grout.
  • This PR is independent of the other grand bain PRs and can be merged on its own.

🤖 Generated with Claude Code

Days become rounded square tiles on a light grout, and a day without
entries keeps a faint tile so the month still reads as a tiled floor.
The legend uses the same tiles.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@SalimMc
SalimMc merged commit 21cf48a into SamiPr0:grand-bain/pool-tile-calendar Oct 30, 2026
1 of 3 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.

1 participant