Repository navigation
Data-table, SQL editor, JSON viewer & extensions improvements (minor release) - #36
Merged
Merged
Conversation
- Promote the sidebar scroll container to a compositing layer ([will-change:scroll-position]) so WebKit runs it at the display's native rate (120Hz on ProMotion) instead of the 60Hz timer path, matching the technique already used for the canvas table. - Update the virtual-window state synchronously on scroll instead of deferring the scrollTop read into a rAF, which left the rendered window one frame behind the scrollbar thumb during a drag. - Correct ROW_H (28 -> 27) to match the real row stride (25px row + 2px gap) so virtual spacers don't drift.
Review changes dialog (DataTable): - Prettify the generated SQL with sql-formatter and render it in an editable Monaco editor (lazy-loaded) instead of a cramped read-only block. Editing the SQL switches Apply to run it verbatim via executeSqlMulti + refetch (onexecutesql), while the unedited path keeps the safe structured per-cell writes. - Include a pending inline new-row INSERT in the combined review + execution, so an added row is no longer silently dropped when applying edits/deletes together. Split panes (PaneSnapshot): - A defocused SQL/Query Editor pane now renders its query text and last results (read-only) instead of the generic 'click to focus' placeholder.
Replace the native <select> elements in the cell editor (enum) and the new-row draft (enum + boolean) with the app's bits-ui Select. The native OS popup was unstyled (white box clashing with the dark theme) and broke on Linux/WebKitGTK. The enum cell editor auto-opens on edit and commits on pick; Escape/click-away cancels.
…ry timeout - Error strip: move the label + 'Fix with AI' action to a header row above a full-width message, and wrap the message with overflow-wrap:anywhere instead of break-all (which chopped ordinary words mid-character). - Query history panel: the History/Saved/Charts tabs overflowed the 224px panel and spilled over the editor toolbar. Widen the panel to w-64, tighten tab padding/gap, and clip the tab group as a safety. - Raise the ad-hoc SQL statement timeout 30s -> 60s so heavier scans (e.g. tables with large TOASTed JSON columns like resume_parsing) finish. - Add an actionable hint under statement-timeout errors.
The dialog is opened programmatically from Monaco (Cmd+S); bits-ui's default escape-to-close didn't fire reliably through that focus path in the WebKit/Tauri webview. Handle Escape explicitly on the name input.
The row expand viewer could blow up memory on rows with big JSON (e.g. resume_parsing's Buffer 'data' byte arrays / large jsonb): - Raw view: the preview kept every array item / object key (only strings were truncated), so displayText ballooned, then got stringified and highlighted. Now cap arrays/objects to 200 children in the preview and skip per-token highlighting entirely for any truncated/large value (plain escaped text). Copy JSON still copies the full value. - Tree view: stop materializing a tuple for every element of a huge array just to show its count — use .length for the summary and build only the currently-visible children.
- Extensions page: enabled state now reads at a glance — sidebar shows a stateful 'N on' badge and an active accent bar, and the detail header card / icon pick up a subtle emerald accent when the extension is on. - Add Cmd/Ctrl+Shift+X to open the Extensions tab; documented in the keyboard shortcuts dialog.
|
This was referenced Jul 5, 2026
Collaborator
Author
|
@copilot summarize the changelog |
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 subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
Rolls up this batch of UX/perf fixes and features into one minor release. Supersedes the individual draft PRs #20, #21, #22, #23, #34 (same changes, combined here).
Performance
jsonb/ Buffer byte arrays. Copy JSON still copies the full value. (Row JSON expand viewer causes memory issues on large values #33)Data table
<select>(unstyled, broken on Linux/WebKitGTK) with the app's portaled Select. (Enum/boolean cell dropdowns use the native OS <select> (unstyled, broken on Linux) #28)SQL editor
Split view
Extensions
Closes #24, #25, #26, #27, #28, #29, #30, #31, #32, #33, #35.
npm run buildpasses; all changes were exercised live in a runningtauri devsession.