feat: card tilt toggle (per-member, synced) #80
No reviewers
Labels
No labels
adr
android
area/calendar
area/design-system
area/i18n
area/jobs
area/offline
area/server
area/testing
bug
ci
duplicate
enhancement
help wanted
invalid
notifications
question
reliability
security
severity/low
severity/medium
tracking
web
wontfix
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
eagraiclainne/app!80
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/card-tilt-toggle"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #48. Stacks on #79 (#60) — base is
feat/sync-ui-preferences; merge that first.Some members find the pinned-note tilt harder to read. This adds a per-member opt-out that straightens every card. It rides the synced
flatten_cardsfield from #60, so the choice follows a member across devices. Default stays tilted — this is an opt-out.What changed
--tilt-onmultiplier gates every card rotation;html[data-flatten-cards="true"]zeroes it, flattening the whole board regardless of screen width. The raw rotations that ignored--tilt-scale(sign-in note, me-menu keyframes) now route through it too. Toggle in Settings → Appearance and a step in the first-login tour, both applying live.flatten_cardsgains a home inThemePrefand ridespullTheme/pushTheme;tiltAngle()returns 0 when set, gated through aLocalFlattenCardsthe theme provides. Settings gets a Tilted/Straight chip beside Motion; the tour reuses that section, so onboarding offers it too. This closes the ADR-0029 note that Android rendered no tilt.frontend-plan.htmlrecords flat as a supported mode and the one-switch mechanism on each surface.Surface parity (rule 1)
Web and Android both honor the preference. MCP and CLI render no cards.
Verification
make checkgreen (Go + web build + web/android i18n).:root{--tilt-on:1}/html[data-flatten-cards=true]{--tilt-on:0}and every rotation multiplies byvar(--tilt-on,1);flatten_cardsround-trips through the live settings write.🤖 Generated with Claude Code
Test report
Coverage: 27.7%
Updated by the check workflow · commit
fe821cbb3fAndroid test report
Updated by the android workflow · commit
fe821cbb3ff0b9154d0afe821cbb3f