github stonerl/Thaw 1.1.99-beta.9

pre-release8 hours ago

Hello everyone,

here is beta 9, and we hopefully have finally fixed the random icon shuffling.

New Features

URL Scheme Integration

  • Registered thaw:// URL events for external tools (like Raycast) and added support to handle Apple Events.
  • Added CFBundleURLTypes to fully implement URL scheme handling for specific actions.

Improvements & Fixes

Startup & Layout Stability

  • Introduced a startup settling period to suppress restore operations during login.
  • Prevented the "icon parade" consisting of 10–15 seconds of continuous icon shuffling caused by app launch notifications.
  • Prevented a race condition during app restarts that could reverse icon order by stopping concurrent cache calls from saving the incorrect order.
  • Prevented multiple concurrent settling tasks from accumulating on setup re-entry by properly tracking and cancelling in-flight tasks.
  • Ensured user-initiated layout resets immediately end the settling period.
  • Fixed a bug where different apps sharing the same icon were conflated into a single logical item.
  • Resolved issues where clicking triggered the wrong item or caused auto-hide to twitch by comparing the instanceIndex to differentiate items.

Visual & UI Refinements

  • Aligned the control item hover background.
  • Fixed an issue where isManuallyHidingApplicationMenus could get stuck if a hide action failed.

Under-the-Hood

Performance

  • Optimized menu bar height retrieval with a new caching mechanism to fix cursor sweep IPC floods.
  • Ensured stale menu bar height caches are cleared on reset.

Architecture

  • Removed redundant Sendable conformance that is already implicitly synthesized by the Swift compiler.

Localization

  • Added a new Japanese translation and updated the Italian translation.

New Contributors

Full Changelog: 1.1.99-beta.8...1.1.99-beta.9

Donations

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

Don't miss a new Thaw release

NewReleases is sending notifications on new releases.