Skip to content

labelle-android v0.3.0 — immersive mode service

Choose a tag to compare

@apotema apotema released this 28 Sep 19:12
537f2b6
  • Immersive mode moves here from labelle-engine (#23, labelle-engine#902). The new immersive service hides the status and navigation bars in immersive-sticky mode.
    • enable(activity) is the sokol path, called from sokol_main().
    • applyUiThread(activity) is the bgfx path, called from the shell's focus hook.
    • It takes the ANativeActivity* as an opaque pointer, like the other services, so the package still depends on std only.
    • The JNI code is the engine's: WindowInsetsController on API 30+, setSystemUiVisibility on API 28/29.
    • Hooks are also installed on an activity that Android recreates in the same process.
  • Callers: labelle-assembler with #796 (the release after v0.118.0) emits the calls when a project lists the android plugin and sets .android.immersive_mode.