Skip to content

Finish the handoff: legacy settings screens, zen list, reminder view, sheet drafts, welcome and Help - #110

Merged
mapgie merged 2 commits into
mainfrom
claude/new-session-demhke
Sep 2, 2026
Merged

Finish the handoff: legacy settings screens, zen list, reminder view, sheet drafts, welcome and Help#110
mapgie merged 2 commits into
mainfrom
claude/new-session-demhke

Conversation

@mapgie

@mapgie mapgie commented Sep 2, 2026

Copy link
Copy Markdown
Owner

Summary

Follow-up to #109. The consolidated handoff says turns 4a and earlier are superseded only where they conflict with 5a to 8a; the first PR built the newer turns and left the older artboards on Material defaults. This PR audits every artboard in ChoreDash.dc.html against the code and closes the gaps.

  • Settings (3a-6) and the 4a pages. Settings, Appearance, Display, Reminders & alerts, About, plus Quick add, Widget and Connection, now use the design's grammar: grouped cards with hairlines, the pill segmented control with a check on the selected cell, accent toggles, a rounded-square checkbox, circular rose/sage steppers, tint and outlined pill buttons, and a serif sub-screen header under the accent strip (CozyControls.kt). Palette tiles and saved-theme rows match 4a-3.
  • Reminder view (3a-5). Tapping a reminder notification opens the dark nudge screen: "reminder." header with the time, glowing bell, "YOU ASKED FOR A NUDGE", the subject, "due today · about 5 minutes", Done ✓ and Snooze 1h, and "next: … · 4:30pm". Done and Snooze mirror the notification actions exactly. No new permissions.
  • Welcome sheet and Settings › Help. 7a removed the speed dial's hint text because "the distinction is taught once in the first-run splash and repeated under Settings › Help". Neither existed. Both do now, rendered from one HelpContent composable. The welcome sheet waits until credentials exist, so a fresh install still lands on the connection screen first.
  • Sheet drafts (README "Sheet dismissal & unsaved changes"). Edit sheets keep unsaved edits through rotation and process death via SavedStateHandle, and offer them back with Restore / Forget on reopen, never applied silently. The sheets' open state survives rotation too.
  • Zen list (3a-4). Calm ground, "zen." header with mine/all and LEAVE ✕, open-circle rows with gentle cues ("kitchen · when you're up"), done rows struck through and faded. Ticking a chore logs it; tasks finished today stay visible.
  • Search row (3a-2) is the card-coloured pill with a sage caret and a text Cancel.
  • WCAG toggle lifts ink faint to ink muted, per the tokens table.
  • Layout fix. The nav graph now consumes the system-bar insets once; the tab screens' own Scaffolds were padding for the status and navigation bars a second time, leaving a dead band under the accent strip and another above the bottom bar (the screenshot from this session).

Dropped / needs decision

  1. 3a Settings inline controls that have no feature behind them: "List density" (Compact/Standard/Spacious), "Follow system theme" (redundant with Brightness = System), and the ZEN MODE toggles "Hide overdue counts" and "Gentle reminders". Not built; say the word and any of them becomes a setting.
  2. 3a Settings HOUSEHOLD rows ("A & M · Shared home · 12 chores · 5 tasks", "NFC tags · 8 stickers paired") have no screen behind them in the app. Not built.
  3. Reminder view as a full-screen alarm (over the lock screen) would need USE_FULL_SCREEN_INTENT; built as the screen behind the notification tap instead, which needs no permission.
  4. Zen sort arrow kept in the zen header (not in the mock) because it is existing behaviour.
  5. Everything listed under "Dropped / needs decision" in Zen Dark theme, revised cards, unified sheets, speed dial, colour and category settings #109 still stands.

Tests

ZenPhraseTest (zen cues), TaskUiStateTest (zen rows), ReminderViewTextTest (meta line, clocks, next-item ordering), SheetDraftTest (draft offer and round-trip). CI is the build check.

🤖 Generated with Claude Code

https://claude.ai/code/session_018PnE5N3U2YmNYY3FQy3zfY

… sheet and Help

Settings and its Appearance, Display, Reminders & alerts, About, Quick add,
Widget and Connection pages now follow the 3a/4a mock-ups: grouped cards with
hairlines, the pill segmented control with a check on the selected cell,
accent-tinted toggles, a rounded-square checkbox, circular steppers and pill
buttons, with a serif sub-screen header under the accent strip. The palette
picker tiles and saved-theme rows match 4a-3.

Tapping a reminder notification opens the dark full-screen reminder view
(3a-5) with Done and Snooze 1h, wired through MainActivity intent state and a
reminder/{kind}/{id} route. A first-run welcome sheet and Settings > Help
carry the chores / tasks / memos explanation the speed dial no longer shows.
The search row is the 3a-2 pill, zen-row components and their gentle cues
are in place for the list screens, and WCAG lifts faint ink to muted.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018PnE5N3U2YmNYY3FQy3zfY
Zen mode is now the 3a-4 list: a calmer ground, a "zen." header with the
mine | all scope pill, the sort arrow and LEAVE, and open-circle rows with a
gentle cue ("kitchen · when you're up") instead of colours and counts. Ticking
a chore logs it and keeps its row in place, struck through and faded, until
zen is left; tasks finished today stay visible the same way.

The Edit chore and Edit task sheets keep unsaved edits through rotation and
process death (rememberSaveable fields, drafts mirrored into the list
ViewModels' SavedStateHandle) and offer them back with Restore / Forget when
the same item is reopened, never applying a draft silently. The sheets' open
state survives rotation too.

The nav graph now consumes the system-bar insets after padding for them, so
the tab screens' own Scaffolds stop adding a second status-bar band under the
accent strip and a second navigation-bar band above the bottom bar.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018PnE5N3U2YmNYY3FQy3zfY
@mapgie
mapgie marked this pull request as ready for review September 2, 2026 21:23
@mapgie
mapgie merged commit 7d08dd0 into main Sep 2, 2026
5 checks passed
@mapgie
mapgie deleted the claude/new-session-demhke branch September 2, 2026 21:23
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