Skip to content

fix(staged): stop timeline hover jitter via scrollbar-gutter and icon layer hint#782

Merged
matt2e merged 1 commit into
mainfrom
jittery-components
Jun 11, 2026
Merged

fix(staged): stop timeline hover jitter via scrollbar-gutter and icon layer hint#782
matt2e merged 1 commit into
mainfrom
jittery-components

Conversation

@matt2e

@matt2e matt2e commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

Summary

Fixes a small visual jitter that occurred when hovering over timeline rows.

  • ProjectHome.svelte: Set scrollbar-gutter: stable on the scrollable column so the centered content no longer re-centers (a ~4px jog) when the vertical scrollbar appears/disappears.
  • TimelineRow.svelte: Add transform: translateZ(0) to the timeline icon so it rasterizes on its own compositing layer at integer pixels and stays put during the row's hover background-color transition. This restores the layer hint perf(staged): pause offscreen animations and drop static will-change from timeline rows #775 dropped from .timeline-row, but scopes it to the tiny icon instead of the full-width row to preserve that commit's memory win.

Test plan

  • Hover timeline rows and confirm the icon and centered column no longer shift.

… layer hint

Two independent contributors made timeline-card content jog ~1px while
sweeping the mouse across rows:

- The centered .projects-list column re-centered whenever .main-panel's
  styled (layout-occupying) vertical scrollbar toggled, shifting every
  card ~4px horizontally. Add scrollbar-gutter: stable to .main-panel so
  the gutter is always reserved and the column never re-centers.
- #775 (8f948a3) dropped will-change: transform from .timeline-row, so
  row icons re-snap sub-pixel positions during the hover background-color
  transition. Restore a layer hint, but pin the tiny .timeline-icon with
  transform: translateZ(0) instead of the full-width row, keeping #775's
  per-row memory win while regaining pixel stability.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Signed-off-by: Matt Toohey <contact@matttoohey.com>
@matt2e matt2e requested review from baxen and wesbillman as code owners June 11, 2026 04:37
@matt2e matt2e merged commit d018de4 into main Jun 11, 2026
5 checks passed
@matt2e matt2e deleted the jittery-components branch June 11, 2026 04:44
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