Image preview zoom/rotate, wider form column, connect-rail centering#363
Merged
Conversation
Extract ZoomableImage, shared by the workdir file preview and the citation chunk visualization. Enable trackpadScrollCausesScale so image previews zoom on a trackpad two-finger scroll (previously only mouse wheel and pinch zoomed), size the image to its exact aspect ratio for every format, and add a reset-to-original control shown while zoomed. Workdir previews gain rotation; the chunk visualization drops its PNG-IHDR layout code (intrinsic size now comes from the decoded image) while keeping base64 broken-image handling. Workdir keeps its download-capable corrupt-image placeholder. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Introduce formColumnMaxWidth (lib/src/core/layout.dart) and use it for the onboarding/connect flow, the OAuth callback, and the quiz start/results views, replacing the per-screen 400 caps. Wider viewports get a roomier column for server URLs, the server list, and quiz content; narrower viewports still fill the available width. A note in layout.dart flags the scattered content-width caps (this column, the chat timeline cap, the preview dialog caps) for later consolidation. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Make ConnectFlowRail stateful and scroll the active node to the centre of the strip on mount and whenever the current step changes, using Scrollable.ensureVisible(alignment: 0.5). The scroll clamps to its bounds, so early steps (URL/Probe) stay pinned at the start and the final step pins at the end when they can't be centred. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A few onboarding/room-preview UX regressions and polish, each as its own commit.
Changes
feat(room): zoomable/rotatable image previews via shared viewerZoomableImage(lib/src/shared/zoomable_image.dart) used by both the workdir file preview and the citation chunk visualization.InteractiveViewer.trackpadScrollCausesScaleso previews zoom on a Mac trackpad two-finger scroll (mouse wheel and pinch already worked).feat(auth,quiz): widen form column to 600 via shared constantformColumnMaxWidth(lib/src/core/layout.dart) replaces the per-screen 400 caps in the connect flow, OAuth callback, and quiz start/results.feat(auth): center the active step in the connect-flow railTesting
flutter analyze: zero issues.ZoomableImage, connect-rail centering, and workdir rotation tests).🤖 Generated with Claude Code