Skip to content

1.2.0-rc.3

Pre-release
Pre-release

Choose a tag to compare

@stonerl stonerl released this 22 Mar 11:57
· 539 commits to main since this release
1.2.0-rc.3
869b00e

Hey everyone,

This release introduces significant under-the-hood improvements to icon management and display logic, specifically targeting "icon jumping" and MacBook notch compatibility.

New Features & Improvements

  • Robust Icon Stability: Implemented a multi-layered tracking system including an InstanceTracker for multi-item apps, PositionConsensus (requiring 3 consistent observations), and an AppLifecycleTracker to defer restoration during app initialization.
  • Intelligent Notch Handling: Added logic to calculate if items fit in available space, automatically falling back to the Thaw Bar if items would be hidden by the notch or screen edge.
  • Overlay Precision: Added an ignoreNotch parameter for the overlay panel to allow the split shape to render correctly even when the menu extends past the notch.

Bug Fixes

  • Click Detection: Fixed an issue where clicking newly-shown hidden items would incorrectly hide the section immediately.
  • Window Server Fallback: Added a fallback to query the Window Server directly when the cache misses, ensuring clicks on newly-visible items are correctly detected.
  • Startup Reliability: Resolved a bug where the IceBar could appear over the menu bar during startup by using sensible height estimates (37pt for notched, 22pt for standard).
  • Modifier Key Precision: Captured modifierFlags directly from the event instead of global state, fixing intermittent issues with Option-clicking the Always-Hidden section.
  • Overlay Visibility: Fixed panel visibility at launch by consistently initializing at the .statusBar level.
  • Stuck Item Recovery: Added a mechanism to automatically detect and recover menu items that become stuck at invalid coordinates (x = -1).
  • Cache Management: Improved width calculations with a bypassCache parameter to prevent showing the previous application's menu width when switching apps.

Localization & Documentation

  • Translations: Updated Czech (CS) translations based on the 1.2.0 RC1 baseline.
  • Documentation: Added official contributing guidelines and updated CONTRIBUTING.md.

Full Changelog: stonerl/Thaw@1.2.0-rc.2...1.2.0-rc.3

Donations

If you find Thaw useful and want to support its further development, consider throwing a coin in my hat.