Vanadium icon indicating copy to clipboard operation
Vanadium copied to clipboard

WebView v139 Update Causes App UI to Render Under Status Bar

Open NarwhalPrince opened this issue 4 months ago • 9 comments

Device: Pixel 9 Pro GrapheneOS Version: 2025080600 Vanadium System WebView Version: 139.0.7258.62.1


Description

After updating the Vanadium System WebView from version 138 to 139, some applications render their UI underneath the system status bar. This creates a visual glitch where the app's header and the status bar overlap, making top-level UI elements difficult to see and interact with. The issue is confirmed with the "Floccus" app but may affect other applications that rely on WebView.

Steps to Reproduce

  1. Perform a clean install of GrapheneOS version 2025072700, which bundles Vanadium WebView 138.0.7204.168.1.
  2. Install Google Play Services and the Floccus app from the Play Store.
  3. Open Floccus and complete the initial setup (e.g., by connecting a Google account).
  4. Observe the layout.
    • Expected Result at this stage: The app's header displays correctly below the OS status bar, with no overlap.
  5. Using the GrapheneOS App Store, update the Vanadium System WebView to version 139.0.7258.62.1.
  6. Force stop and reopen the Floccus app.

Actual Result

The app's header and search bar are now incorrectly drawn underneath the OS status bar. The status bar icons (time, battery, etc.) overlap the app's content.

Additional Notes

This appears to be a regression introduced in the version 139 update of Vanadium WebView. The root cause may be an upstream Chromium issue or an incompatibility with how certain apps handle window views.

NarwhalPrince avatar Aug 08 '25 22:08 NarwhalPrince

This is likely caused by apps not properly handling edge-to-edge, which became the default for targeting Android 15 and is forced for targeting Android 16. That app is probably just buggy and it's likely not specific to GrapheneOS. Chromium has been adding proper edge-to-edge support so that could be why.

thestinger avatar Aug 08 '25 22:08 thestinger

I suspected as such and figured it was probably an upstream change in 139. Thanks!

NarwhalPrince avatar Aug 08 '25 22:08 NarwhalPrince

Definitely an upstream change but the incompatibility seems like an app bug they need to address. Likely also occurs on stock OS with Chrome. Would be useful for someone to check.

thestinger avatar Aug 08 '25 22:08 thestinger

I checked and didn't see it on QPR1 beta but by the time I figured out it was the WebView, I had removed stock. Will get it installed here soon.

NarwhalPrince avatar Aug 08 '25 22:08 NarwhalPrince

I.e. Not sure what Chrome version they package.

NarwhalPrince avatar Aug 08 '25 22:08 NarwhalPrince

Chrome 139 is being rolled out via the Play Store to a random 25% of users:

https://chromiumdash.appspot.com/releases?platform=Android

thestinger avatar Aug 08 '25 22:08 thestinger

Can't replicate it on stock. Even QPR1 ships Android System Webview v134, which the app uses regardless of Chrome version. I don't have a PWA that I could use in place of the app I tested this with.

NarwhalPrince avatar Aug 08 '25 23:08 NarwhalPrince

If you update Chrome, it should update the WebView.

thestinger avatar Aug 09 '25 00:08 thestinger

I was only able to update Chrome to either v138 or v 140 and the issue did not occur in the app with either version. Android system webview is still listed as v134.

NarwhalPrince avatar Aug 09 '25 00:08 NarwhalPrince