ReviewOS

also looking at this

craft-native/craft

fix(ios): let native screens choose interface appearance

#398
Closed glennmichael123 wants to merge codex/issue-389-appearance into main
8 files +218 -5

Review threads live on the whole diff, not on one commit, so none are shown here - a thread's line means something in the branch's final form, and painting it into an intermediate step would put it on code it is not about.

packages/zig/test/ios_conformance_test.zigmodified+4-1
Changes to packages/zig/test/ios_conformance_test.zig
@@ -201,7 +201,10 @@ const dispatch_end = "func webView(";
201201/// and HKLiveWorkoutBuilder are owned by CraftHealth.swift, including their
202202/// delegate callbacks and iOS 26 availability; the actions remain on the
203203/// Swift shim until the Zig bridge has an equivalent lifecycle channel.
204const max_not_yet_migrated: usize = 58;
204/// 60 when native screens gained setAppearance and getAppearance. They update
205/// the app-wide UIKit style and remain on the Swift side until Zig owns that
206/// lifecycle as well; no existing Zig action was removed.
207const max_not_yet_migrated: usize = 60;
205208
206209fn dispatcherRegion() []const u8 {
207210 // CraftApp.swift also contains chrome, console and bridge-relay handlers.