Skip to content

fix(chrome): place toolbar sections and view switchers where the HIG puts them - #3851

Merged
datlechin merged 3 commits into
mainfrom
fix/chrome-hig-standard
Oct 26, 2026
Merged

datlechin merged 3 commits into
mainfrom
fix/chrome-hig-standard

Conversation

@datlechin

@datlechin datlechin commented Oct 26, 2026 •

Copy link
Copy Markdown
Member

Summary

  • No classic toolbar mode: glass weight is the system's, set in System Settings > Appearance > Liquid Glass and Reduce Transparency, and the macOS 27 SDK ignores UIDesignRequiresCompatibility. Every surface follows the HIG instead.
  • Main toolbar: Save Changes moves to the end of the trailing run (Refresh, Actions, Safe Mode, Save), so AppKit draws it in a section of its own, as HIG Item groupings asks for Save. A customized toolbar keeps its order (scripts/probes/check-toolbar-autosave-reorder.sh).
  • Sidebar Tables / Favorites: small with the tabs role on macOS 27, a flat track instead of a glass capsule.
  • View switching in the main window area is one PaneTabBar: a centred tab row, regular with the tabs role on macOS 27, over content that runs edge to edge. Structure, Create Table, Create Table forms, User Type, Compare detail. No bordered tab view, which boxed and inset the grids.
  • View switchers in a pane's own bar or the inspector share viewSwitcherStyle(), small with the tabs role on macOS 27: results view mode, Query Plan, Version History, JSON results, the cell viewers, the trailing pane header, the geometry field, Data File sheets, Users & Roles detail.
  • Create Table: add and remove sit at the foot of the grid, and the validation message and Create Table in a bar below it.
  • Data File sheets turn into a menu past six sheets instead of eight (HIG Tab views).
  • Data File uses AppKit's inspector toggle, Integrations the system inspector glyph, and Compare & Sync defaults to Icon Only like the other windows.
  • The diagram zoom pill uses glass on macOS 26 and later, like the other floating controls.
  • iOS 26: toolbar glyphs drop their circle through the shared ToolbarSymbols, and the Structure section bar uses safeAreaBar.
  • A tab switch in Structure and Create Table commits the open cell edit before the new tab is published, so an edit cannot land on another tab's rows when the incoming grid mounts first.
  • Users & Roles: the scope outline selects the scopes the checklist still edits when Privileges is shown again, instead of coming back with no highlight.
  • The AI walkthrough diff picker reads Split, Unified like the other two.
  • Tests changed on purpose: QueryPlanResultUITests, DataFileWindowUITests and the showStructure helper. On macOS 27 XCUITest reports a tabs-role control as a tab group of Tab elements (read from the CI element tree), so segments go through a new switcherSegment(_:in:).
Before After
Toolbar before Toolbar after
Toolbar before, dark Toolbar after, dark
Create Table before Create Table after
Create Table before, dark Create Table after, dark
Zoom pill before Zoom pill after

Test plan

  • New: BindingCommittingGridEditTests, PrivilegeScopeOutlineSelectionTests, ViewSwitcherStyleTests, SidebarScopeControlTests.tabsRoleOnMacOS27, ToolbarSymbolsTests sort cases.
  • 32 unit suites over the changed types, 372 cases passing; iOS build plus DataBrowserViewModelTests and ConnectionListRowModelTests, 49 passing; lint and l10n clean.
  • UI flows not run locally: Automation Mode needs authentication on this Mac and another TablePro was running. CI runs them.
  • Captured on macOS 27.0.1 only; macOS 26 and 13 to 15 take the #available fallbacks, covered by tests, not on screen.

Fixes #3844

@datlechin
datlechin merged commit e6b5e61 into main Oct 26, 2026
8 checks passed
@datlechin
datlechin deleted the fix/chrome-hig-standard branch October 26, 2026 19:14
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.

UI feedback: Liquid Glass toolbar controls feel too visually heavy

1 participant