Repository navigation
fix(native): Sankey hover, persistent aurora, scrolling tables and field alignment (UI batch 5) - #446
Merged
Merged
Conversation
SwiftUI's onHover tracks a view's frame, not its shape, so every band covered the whole chart and the topmost band lit wherever the pointer was. One tracker now hit-tests like the SVG: node bars by their rectangles first, then bands by their stroked outlines, last drawn first; empty space hovers nothing. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018QJtaMxiuFABVL2LiMKy5m
The canvas was the page container's background inside the zoom view, so a page switch re-laid it out with the new page and it stopped at the titlebar strip. It now sits beside the page in the detail column, runs under the titlebar strip as the web canvas does and is not rebuilt when the route changes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018QJtaMxiuFABVL2LiMKy5m
Like the web <Table> overflow-auto wrapper: VisionTable keeps its columns at their content widths and scrolls horizontally when the card is narrower (the diagnostics MAPE column no longer wraps), the transactions table stops at its column minimums and scrolls, and the grid tables on account detail, rebalance and the analysis report use HorizontalOverflowScroll. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018QJtaMxiuFABVL2LiMKy5m
…cards The web VirtualDataTable is always a Card; these three LocalDataTables were painted straight on the page background. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018QJtaMxiuFABVL2LiMKy5m
…stRow Title in type-body regular, subtitle lines in type-footnote and the drift chip at the default badge size, as AccountsPage renders them. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018QJtaMxiuFABVL2LiMKy5m
NSTextView pads its text horizontally only; taking that 5 pt off the vertical padding too put the caret and typed text 5 pt above the placeholder. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018QJtaMxiuFABVL2LiMKy5m
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.
Requested by EraPartner · project thread
Summary
Batch 5 of the Swift vs TypeScript UI parity work (TS app is the reference).
StatisticsFlowView.swift): SwiftUIonHovertracks a view's frame, not its shape, so after fix(native): match the web aurora, glass cards, ticker and remaining UI audit rows (batch 3) #444 every band covered the whole chart and the topmost band lit everywhere. OneonContinuousHovernow hit-tests SVG-style: node rects first, then band stroked outlines, last drawn first; empty space hovers nothing.ShellRootView.swift): the canvas was the page container's background inside the zoom view, so it was re-laid out with every page and stopped at the titlebar strip (the band in the Enhanced screenshot). It is now a sibling layer in the detail column, outside the route-keyed page, and runs under the titlebar strip like the web.liquid-canvas.VisionTablekeeps content widths and scrolls (fixes the diagnostics MAPE wrap);TransactionsTablestops at its column minimums and scrolls; newHorizontalOverflowScrollwraps the grid tables on account detail, rebalance and the analysis report.LocalDataTablealready scrolled.VirtualDataTableis always aCard).type-bodyregular, subtitletype-footnote, drift chip at the default badge size, asAccountsPage/ListRow.Type of change
fix— bug fixChecklist
swiftjob only (no Swift toolchain in the cloud container)docs/pages updated: none reference the changed codeArchitecture & data
Verification
Not built or run locally: there is no Swift toolchain in the cloud container. The CI
swiftjob is the compile and test check. All look changes are unverified on a Mac.Residual risk & follow-ups
Generated by Claude Code