Skip to content

Feed switch: 110/160ms list dip + 160ms tab color ease - #27

Merged
Shaance merged 1 commit into
mainfrom
motion/feed-switch-dip
Nov 5, 2026
Merged

Shaance merged 1 commit into
mainfrom
motion/feed-switch-dip

Conversation

@Shaance

@Shaance Shaance commented Nov 5, 2026

Copy link
Copy Markdown
Owner

Motion item C3. Switching feeds/pages dips the list through the chrome color (110ms out, 160ms in) while the active tab eases dim→accent over 160ms and the old tab eases back. First load snaps; HN_REDUCED_MOTION and ANSI/mono palettes skip it.

Motion item C3: switching feeds (1-4) or pages now dips the outgoing list
through the chrome color (110ms ease-in out, 160ms ease-out back in) while
the newly active tab's color eases dim → accent over 160ms and the previous
tab eases back, so tab and list read as one transition. The first load of a
feed snaps instantly, and HN_REDUCED_MOTION or non-truecolor palettes skip
the motion.

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
@Shaance
Shaance force-pushed the motion/feed-switch-dip branch from 735e0c0 to 63b14fc Compare November 5, 2026 14:40
@Shaance
Shaance merged commit 269506b into main Nov 5, 2026
1 check passed
@Shaance
Shaance deleted the motion/feed-switch-dip branch November 5, 2026 14:42
Shaance added a commit that referenced this pull request Nov 5, 2026
…ver mid-ease (#30)

Two teleports remained after #27: (1) the new list popped in at full
brightness before the dip faded it, and (2) the active tab's bold/underline
snapped instantly while its color eased over 160ms. Now set_stories_for stashes
the outgoing list (stories/selection/scroll) and render swaps it in during the
110ms out-phase so the old list fades through the scrim color before the new
one fades in; the tab's bold/underline transfer at the ease midpoint
(alpha >= 0.5) instead of at frame zero.

Generated by Mistral Vibe.

Co-authored-by: chris ha <chris.ha@thetradedesk.com>
Co-authored-by: Mistral Vibe <vibe@mistral.ai>
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