Every year I try to build custom native UI with every-frame-perfect animations with SwiftUI, and every year after fighting against nature for a few days, I once again write custom NSViews with CoreAnimation layers. SwiftUI just isn't ready for that yet.
Work-in-progress: a new split layout framework for nearly all Apple platforms (macOS, iOS, etc.). A mix of SwiftUI and raw CoreAnimation. The goal is "every frame perfect" animation. Still very wip, but getting there! Goal is to bring it back to Ghostty eventually.
Split layout framework update. Since the last video: focus views animate, corner drags can move both axes, cross-window drag and drop with animation, all animations backed by CoreAnimation, and full accessibility framework integration (e.g. compat with VoiceOver).
The focus view work was the hardest and most complicated. We allow caller-provided SwiftUI views for the focus style, but have to drop that back to a native AppKit/UIKit hosted view for smooth CoreAnimation integration with our other animations so they move in lock-step with our other stuff.
Lot of work to get that to work, but I think it turned out great. The caller lives in easy SwiftUI land we handle that complexity.
The animation timings and curves need to be tweaked. I think some animations are too long or don't feel right. But thats just parameterization at this point...