Overriding env(safe-area-inset-*) in a WebView: Android and iOS
How do you make a WebView report safe-area insets the device doesn't have? Android overrides onApplyWindowInsets; iOS overrides the safeAreaInsets getter. Both work, both are silent when they fail, both can be changed while the page is loaded, and iOS has a WebKit timing bug that will convince you it doesn't work at all. With before/after screenshots on both platforms, plus the second inset channel, the keyboard, and the double-count it causes in a host that pads for the system bars.