Skip to content

fix(schema): fill-width fit + gentler wheel zoom in the full view#51

Merged
BorisTyshkevich merged 1 commit into
mainfrom
feat/schema-fullview-fit-zoom
Jun 26, 2026
Merged

fix(schema): fill-width fit + gentler wheel zoom in the full view#51
BorisTyshkevich merged 1 commit into
mainfrom
feat/schema-fullview-fit-zoom

Conversation

@BorisTyshkevich

Copy link
Copy Markdown
Collaborator

Two small UX tweaks to the fullscreen schema graph (follow-up to #47), tested on github.demo.

Changes

  • Fit-to-width — new pure fitWidthBox() frames the graph so its width fills the container (viewBox aspect matched to the container, so no horizontal letterboxing), anchored at the top; a tall graph scrolls/pans down. openSchemaFullscreen opts in via a fitWidth flag threaded through openGraphFullscreenattachPanZoom; the initial frame, Fit button, and double-click all use it. The pipeline graph and inline pane keep fit-whole.
  • Gentler wheel zoom — dedicated WHEEL_ZOOM_STEP (1.04, ~4%/notch) for ⌘/Ctrl+wheel so it isn't jumpy on a trackpad; the +/− buttons keep the 1.2 step.

Tests

fitWidthBox (fill-width + aspect-match + unknown-size fallback) in panzoom.test.js; a fitWidth integration assertion in explain-graph.test.js. 935 tests pass; per-file coverage gate green.

🤖 Generated with Claude Code

https://claude.ai/code/session_01XmDqY6Bxf5b1fyQE8XwA2u

Two small UX tweaks to the fullscreen schema graph:

- Fit-to-width: new pure fitWidthBox() frames the graph so its WIDTH fills the
  container (viewBox aspect matched to the container → no horizontal letterbox),
  anchored at the top so a tall graph scrolls/pans down. openSchemaFullscreen
  opts into it via a fitWidth flag threaded through openGraphFullscreen →
  attachPanZoom; the initial frame, the Fit button, and double-click all use it.
  The pipeline graph + inline pane keep fit-whole.
- Gentler wheel zoom: a dedicated WHEEL_ZOOM_STEP (1.04, ~4%/notch) for ⌘/Ctrl+
  wheel so it isn't jumpy on a trackpad; the +/- buttons keep the 1.2 step.

Tests: fitWidthBox (fill-width + aspect-match + unknown-size fallback) in
panzoom.test.js; a fitWidth integration assertion in explain-graph.test.js.
935 tests pass; per-file coverage gate green.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XmDqY6Bxf5b1fyQE8XwA2u
@BorisTyshkevich BorisTyshkevich merged commit 6cfba68 into main Jun 26, 2026
4 checks passed
@BorisTyshkevich BorisTyshkevich deleted the feat/schema-fullview-fit-zoom branch June 26, 2026 14: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