CarSurf

Version 0.2.8

Covers two releases folded together — 0.2.7 was never tagged on its own.

0.2.8 — per-frame animations no longer freeze on the drive

Anything a bridged app animated per frame — synced lyrics, scrubbers, custom animations — froze solid while mirroring, even though timer-driven UI kept working fine, which made the damage look app-specific. The cause: a CADisplayLink created the normal way binds to the phone's own screen, which stays asleep for the whole drive. Display links are now redirected onto the car screen instead, with a standby link on the original screen that takes over if the car link goes quiet for about six frames — so unplugging mid-drive can't strand an app on a dead screen.

0.2.7 — views no longer get stranded after a fullscreen modal

Opening a fullscreen modal (YouTube's fullscreen player, for example) and coming back could leave part of the app's own UI stranded off-screen. Apps normally recover from this using rotation, but the car window is a fixed landscape canvas that never rotates, so that recovery never fired. CarSurf now remembers where everything was before the modal appeared and puts back anything still out of place shortly after it's dismissed.