904b9b3d-c0eb-42f3-acef-958.../Sources/sources
徐翔宇 63885fe121 v2.0.3: compact panel via host size hint + Apple Music artwork + faster poll
Host-facing:
- Info.plist requests a 440x340 expanded panel via the new
  MioPluginPreferredWidth/MioPluginPreferredHeight keys (MioIsland
  v2.1.8+). Old hosts ignore the keys and use their default.

UI:
- Fix vertical stretching of the playing card. Outer ZStack now centers
  children instead of wrapping in a maxHeight:.infinity frame which was
  letting an inner Spacer propagate fill-height up to the top-level VStack.
- Hero HStack clipped to album art height (128pt) so the meta column
  can't bleed a fill-height hint upward either.

Data:
- Apple Music artwork is now fetched via a temp file (write artwork data
  of current track to /tmp, load NSImage from disk). First-class cover art
  instead of the generic music.note placeholder.
- apply(appleScript:) clears albumArt when the track identity changes so
  the next refresh reloads cover art for the new track.

Latency:
- Poll interval 3s → 1.5s. Track changes typically reflect within 2s.
- Also subscribe to the legacy com.apple.iTunes.playerInfo distributed
  notification in addition to com.apple.Music.playerInfo — some builds of
  Music.app still emit the iTunes name.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-19 20:42:14 +08:00
..
AppleMusicAppleScript.swift v2.0.3: compact panel via host size hint + Apple Music artwork + faster poll 2026-04-19 20:42:14 +08:00
ChromeWebSource.swift v2.0.1: compact UI + AppleScript timeouts 2026-04-19 11:09:29 +08:00
MediaRemoteSource.swift v2.0.0: full rewrite with multi-source NowPlaying 2026-04-19 02:27:21 +08:00
SpotifyAppleScript.swift v2.0.1: compact UI + AppleScript timeouts 2026-04-19 11:09:29 +08:00