Open Bug 1644800 Opened 5 years ago Updated 5 years ago

GeckoView navigation shouldn’t break if the beforeunload prompt is not implemented

Categories

(GeckoView :: General, defect, P3)

All
Android
defect

Tracking

(Not tracked)

REOPENED

People

(Reporter: mortimergoro, Unassigned)

Details

Attachments

(1 file)

Attached file logcat.txt

In FxR we found a freeze in GV navigation after exiting WebXR. It can be reproduced with navigating to https://doc.babylonjs.com/how_to/webxr_demos_and_examples and entering and exiting WebXR (note that it works perfectly downloading the code and running it outside their playground).

I have checked the usual problematic processes (compositor, parent process, UI thread, GV thread) and they look ok. WebGL still runs after exiting the demo and I can even click on the CSS to show the playground code or enter VR again.

The problem is that when trying to navigate GV to other page it doesn't do anything
I have checked the JS module logs and GeckoViewNavigation.jsm loadURI function is correctly called but it doesn't process it. WebBrowserChromeChild shouldLoadURI is not shown in the log after the navigation freeze. WebBrowserChromeChild shouldLoadURI was correctly printed when navigation worked before exiting WebXR

Logcat attached

This is a release blocker for FxR

Severity: -- → S3
Priority: -- → P1
Whiteboard: [geckoview:m79][fxr:p1]

it turns out the page is displaying a beforeunload prompt and we had not that implemented in FxR...

Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED

Reopening because this is still a bug: Navigation shouldn’t break because a prompt isn’t implemented.

Summary: GeckoViewNavigation loadURI not processed → GeckoView bavigation shouldn’t break if the beforeunlod prompt is not implemented
Summary: GeckoView bavigation shouldn’t break if the beforeunlod prompt is not implemented → GeckoView navigation shouldn’t break if the beforeunlod prompt is not implemented
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Summary: GeckoView navigation shouldn’t break if the beforeunlod prompt is not implemented → GeckoView navigation shouldn’t break if the beforeunload prompt is not implemented

The default impl for onBeforeUnload() in PromptDelegate returns null, which the docs say deny the navigation. That's clearly the wrong thing to do here, we should instead allow the navigation in that case.

Whiteboard: [geckoview:m79][fxr:p1] → [geckoview:m80][fxr:p1]
Priority: P1 → P2
Priority: P2 → P3
Whiteboard: [geckoview:m80][fxr:p1]
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: