Changed
- Extract shared
performDirectTabSwitchintoMainContentCoordinatorto eliminate duplicate tab-switch logic - Welcome window now uses native macOS frosted glass translucency (NSVisualEffectView with behind-window blending)
Fixed
- Auto-detect MySQL vs MariaDB server type from version string to use correct timeout variable (
max_execution_timefor MySQL,max_statement_timefor MariaDB) - Improved tab switching performance by caching row providers and change managers across SwiftUI render cycles
- Eliminated selection sync feedback loop causing redundant DataGridView updates during tab switch
- Enabled NSTableView row view recycling to reduce heap allocations during scrolling
- Reduced SwiftUI re-render cascades by batching @published mutations during tab switch
- Improved DataGrid scrolling performance:
- Row views now recycled via NSTableView's reuse pool instead of allocating new objects per scroll
- Replaced O(n) String.count with O(1) NSString.length for large cell value truncation
- Replaced expensive NSFontDescriptor.symbolicTraits checks with O(1) pointer equality on cached fonts
- Added layerContentsRedrawPolicy and canDrawSubviewsIntoLayer to reduce compositing overhead
- Cached NULL display string locally instead of per-cell singleton access
- Cached AnyChangeManager to avoid per-render allocation with Combine subscriptions
- Deferred accessibility label generation to when VoiceOver is active
- Removed unnecessary async dispatch in focusedColumn, collapsed two reloadData calls into one