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-3
Changes to packages/zig/test/ios_conformance_test.zig
@@ -201,15 +201,16 @@ 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.
204/// 60 when native screens gained setAppearance and getAppearance. They update
204/// 61 when native screens gained setAppearance and getAppearance. They update
205205/// 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.
206/// lifecycle as well; each new action increases the outstanding count, and no
207/// existing Zig action was removed.
207208/// 59 when the spec gained getHealthSamples: glucose, insulin and carbs one
208209/// sample at a time (bloodGlucose, insulinDelivery, dietaryCarbohydrates), an
209210/// HKSampleQuery in CraftHealth.swift like the other health reads. It went
210211/// into Swift first and falls through to the shim, which serves it. Not a
211212/// regression: no action left Zig.
212const max_not_yet_migrated: usize = 60;
213const max_not_yet_migrated: usize = 61;
213214
214215fn dispatcherRegion() []const u8 {
215216 // CraftApp.swift also contains chrome, console and bridge-relay handlers.