diff --git a/android/AndroidManifest.xml b/android/AndroidManifest.xml index 0c31aeb..4987ca7 100644 --- a/android/AndroidManifest.xml +++ b/android/AndroidManifest.xml @@ -13,10 +13,11 @@ + android:debuggable="true"> Window -> decor View -> WindowInsets. Returns false while // the decor view is still unattached, which is normal for the first few frames. refresh_insets :: proc() -> bool { + // Returning true, not false: zero insets are the correct answer where there + // are no system bars, and the caller retries every frame until this succeeds + // -- requesting a render each time. Failing here would pin the desktop loop + // awake forever, which is exactly what render_on_change is meant to avoid. + when ODIN_PLATFORM_SUBTARGET != .Android { + return true + } + // This runs every frame until it succeeds, and each call below returns a // local ref. Without a frame to scope them the ref table fills and aborts. env := jni.env()