diff --git a/source b/source index a9882279bbe..52fce2f33f6 100644 --- a/source +++ b/source @@ -84625,6 +84625,10 @@ interface Location { // but see also is historyHandling.
Run process a navigate response with navigationType, - allowedToDownload, and navigationParams.
Run process a navigate fetch given resource, the source browsing context, browsingContext, navigationType, - sandboxFlags, allowedToDownload, incumbentNavigationOrigin, - activeDocumentNavigationOrigin, and historyHandling.
javascript
" nor a fetch
schemeRun process a navigate URL scheme given resource's url and browsingContext.
Let response be null.
If sourceBrowsingContext's If hasTransientActivation is true, then set request's user-activation to true.WindowProxy
's [[Window]] value has
- transient activation, then set request's
Otherwise, if locationURL is a URL, run the process a - navigate URL scheme given locationURL and browsingContext, and - return.
Otherwise, if locationURL is a URL:
+ +Process a navigate URL scheme given locationURL, + browsingContext, and hasTransientActivation.
Return.
Let navigationParams be a new navigation params whose request is request, Location { // but see also Otherwise, the document's type is such that the resource will not affect
browsingContext, e.g., because the resource is to be handed to an external application
- or because it is an unknown type that will be processed as a download. Process the resource appropriately.
To process a navigate URL scheme, given a URL url and - browsing context browsingContext, run these steps:
+To process a navigate URL scheme, given a URL url, a + browsing context browsingContext, and a boolean + hasTransientActivation:
If url is to be handled using a mechanism that does not affect browsingContext, e.g., because url's scheme is handled externally, then proceed with that mechanism instead.
Otherwise, url is to be handled by displaying some sort of inline content, e.g.,
@@ -85196,16 +85215,15 @@ interface Location { // but see also passing its URL or
- data to an external software package separate from the user agent (e.g. handing a mailto:
URL to a mail client, or a Word document to a word
- processor), user agents should attempt to mitigate the risk that this is an attempt to exploit the
- target software, e.g. by prompting the user to confirm that the source browsing
- context's active document's origin is to be allowed to invoke the specified software.
- In particular, if the navigate algorithm was invoked when source browsing
- context's active window does not have transient activation, the
- user agent should not invoke the external software package without prior user confirmation.
To hand-off to external software given a URL or response resource and a boolean + hasTransientActivation, user agents should perform the appropriate handoff of + resource while attempting to mitigate the risk that this is an attempt to exploit the + target software. For example, user agents could prompt the user to confirm that the source + browsing context's active document's origin is to be allowed to invoke the external software in + question. In particular, if hasTransientActivation is false, then the user agent should + not invoke the external software package without prior user confirmation.
For example, there could be a vulnerability in the target software's URL handler which a hostile page would attempt to exploit by tricking a user into clicking a link.