mirror of
https://github.com/koreader/koreader.git
synced 2026-02-26 18:25:26 +01:00
On some Onyx Boox devices, the SurfaceView surface is not recreated after the rapid activity cycling that the Boox system performs on wake, leaving android.app.window permanently nil. This caused a black screen after font size change + sleep + wake. The SurfaceView with setZOrderOnTop(true) was introduced for NGL4/Tolino devices. The Onyx Qualcomm EPD API (View.refreshScreen) does not require a SurfaceView — einkUpdate() already falls back to the DecorView content view when no SurfaceView exists. Setting OnyxEPDController.needsView()=false makes Onyx devices use NativeActivity's default DecorView surface, which follows the standard activity lifecycle and correctly survives wake. Fixes #12445