--
You received this message because you are subscribed to the Google Groups "navigation-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to navigation-de...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/navigation-dev/133c1971-c675-4a0e-a7ea-cda402ed9d85n%40chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/navigation-dev/CAH%2B8MBZQPiV6zqMn9UNzs0FS64bL3bi1--qFbdqPAXvwn%3DeoOw%40mail.gmail.com.
Every navigation are "driven" by the browser process, except two:
- same-document navigation (updating the #fragment, history.replaceState / pushState, ...) initiated from the document. (excluding the browser initiated ones: omnibox + history ones)
- The synchronous about:blank re-navigation. At some point, we should get rid (and align with Firefox). More info here.
What make those navigation really unique, they are initiated from the renderer process and must take effect synchronously. As a result, an IPC round-trip with the browser process is impossible.I think I like your suggestions, but I also liked the previousI tried to find other suggestion, but they aren't necessarily better than your:NavigationState::DrivenByBrowserProcess() // Regular navigation. Driven by the browser process.NavigationState::DrivenByRendererProcess() // Mostly renderer-initiated same-document navigation.orNavigationState::Create() // Regular navigation. Driven by the browser process.NavigationState::CreateForSynchronousCommit() // Mostly renderer-initiated same-document navigation.
On Wednesday, April 21, 2021 at 4:21:54 PM UTC+2 David Bokan wrote:I didn't change NaviationRequest::CreateBrowserInitiated as I haven't looked as closely at that, though given that the caller must pass in a |browser_initiated| parameter perhaps just renaming it to a more generic Create would avoid potential confusion? There's already a TODO here to fix the name and potentially merge it with CreateContentInitiated.
See an old CL of mine doing exactly what you described:
https://chromium-review.googlesource.com/c/chromium/src/+/2199263
There are some useful discussions within the patch. I ended up abandoning it.
--
You received this message because you are subscribed to the Google Groups "navigation-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to navigation-de...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/navigation-dev/4fd14df1-1106-41f6-a72e-02d120dfa624n%40chromium.org.
Question from a bird's eye view perspective: any chance we are talking about pre-commit vs post-commit interpretations of browser-vs-renderer initiation?
For example, for David's "Navigate to bokand.github.io origin" bullet above, the mentioned calls would make sense if:- the unloaded subframe sees the "navigate-away" request as browser-initiated (because it came from a site-isolated frame through the browser), and- both the browser and the newly loaded frame see the navigation as renderer-initiated.Do we know which "processes" are the primary users of NavigationRequest vs NavigationState?
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/navigation-dev/CAB0cuO4tazQ7vuA8O6QJNT%2BHdu9CDzYNWi4SRPdNY1VSs96ayA%40mail.gmail.com.