- From: Anne van Kesteren <notifications@github.com>
- Date: Fri, 09 May 2025 07:11:23 -0700
- To: whatwg/fetch <fetch@noreply.github.com>
- Cc: Subscribed <subscribed@noreply.github.com>
- Message-ID: <whatwg/fetch/pull/1823/review/2828486239@github.com>
@annevk approved this pull request. This looks good to me modulo some comments. @ricea and @noamr are maybe willing to review this too. > @@ -1666,17 +1666,38 @@ of the <a for="environment">target browsing context</a>'s <a>active document</a> <a>environment settings object</a>. <p>A <a for=/>request</a> has an associated -<dfn export for=request id=concept-request-window>window</dfn> -("<code>no-window</code>", "<code>client</code>", or an -<a>environment settings object</a> whose -<a for="environment settings object">global object</a> is a -{{Window}} object). Unless stated otherwise it is -"<code>client</code>". +<dfn export for=request id=concept-request-window>traversable for user prompts</dfn>, that is I'm trying to write out "end user" where I can myself. I'm not actually sure where we are consistency-wise, but is that something we can strife for? I'm happy to document it as the term to use. > -<p class=note>The "<code>client</code>" value is changed to "<code>no-window</code>" or -<a for=/>request</a>'s <a for=request>client</a> during <a lt=fetch for=/>fetching</a>. It provides -a convenient way for standards to not have to explicitly set <a for=/>request</a>'s -<a for=request>window</a>. +<p>When displaying a user interface associated with a request in that request's +<a for=request>traversable for user prompts</a>, the user agent should update the address bar to +display something derived from the request's <a for=request>current URL</a> (and not, e.g., leave +it at its previous value, derived from the URL of the request's initiator). Additionally, the user +agent should avoid displaying content from the request's initiator in the +<a for=request>traversable for user prompts</a>, especially in the case of cross-origin requests. +Displaying a blank page behind such prompts is a good way to fulfill these requirements. Failing to +follow these guidelines can confuse users as to which origin is responsible for the prompt. ```suggestion follow these guidelines can confuse end users as to which origin is responsible for the prompt. ``` > - if <var>request</var>'s <a for=request>client</a>'s - <a for="environment settings object">global object</a> is a {{Window}} object; otherwise - "<code>no-window</code>". - - <li><p>If <var>request</var>'s <a for=request>origin</a> is "<code>client</code>", then set - <var>request</var>'s <a for=request>origin</a> to <var>request</var>'s <a for=request>client</a>'s - <a for="environment settings object">origin</a>. + <li> + <p>If <var>request</var>'s <a for=request>traversable for user prompts</a> is "<code>client</code>": + + <ol> + <li><p>Set <var>request</var>'s <a for=request>traversable for user prompts</a> to + "<code>no-traversable</code>". + + <li> + <p>If <var>request</var>'s <a for=request>client</a> is non-null, then: ```suggestion <p>If <var>request</var>'s <a for=request>client</a> is non-null: ``` > - <a for="environment settings object">origin</a>. + <li> + <p>If <var>request</var>'s <a for=request>traversable for user prompts</a> is "<code>client</code>": + + <ol> + <li><p>Set <var>request</var>'s <a for=request>traversable for user prompts</a> to + "<code>no-traversable</code>". + + <li> + <p>If <var>request</var>'s <a for=request>client</a> is non-null, then: + + <ol> + <li><p>Let <var>global</var> be <var>request</var>'s <a for=request>client</a>'s + <a for="environment settings object">global object</a>. + + <li><p>If <var>global</var> is a {{Window}} object, and <var>global</var>'s ```suggestion <li><p>If <var>global</var> is a {{Window}} object and <var>global</var>'s ``` > @@ -5517,10 +5560,13 @@ run these steps: <a for="fetch params">canceled</a>: <ol> - <li><p>If <var>request</var>'s <a for=request>window</a> is "<code>no-window</code>" and - <var>request</var>'s <a for=request>redirect mode</a> is "<code>error</code>", then set - <var>httpFetchParams</var> to <var>fetchParams</var> and <var>httpRequest</var> to - <var>request</var>. + <li> + <p>If <var>request</var>'s <a for=request>traversable for user prompts</a> is "<code>no-traversable</code>" and Exceeds 100 columns jingle > @@ -5517,10 +5560,13 @@ run these steps: <a for="fetch params">canceled</a>: <ol> - <li><p>If <var>request</var>'s <a for=request>window</a> is "<code>no-window</code>" and - <var>request</var>'s <a for=request>redirect mode</a> is "<code>error</code>", then set - <var>httpFetchParams</var> to <var>fetchParams</var> and <var>httpRequest</var> to - <var>request</var>. + <li> + <p>If <var>request</var>'s <a for=request>traversable for user prompts</a> is "<code>no-traversable</code>" and + <var>request</var>'s <a for=request>redirect mode</a> is "<code>error</code>", then set + <var>httpFetchParams</var> to <var>fetchParams</var> and <var>httpRequest</var> to + <var>request</var>. + + <p class=note>If user prompts are possible, then we need to clone <var>request</var> because ??? Because it's one of the scenarios where we might have to repeat request. -- Reply to this email directly or view it on GitHub: https://github.com/whatwg/fetch/pull/1823#pullrequestreview-2828486239 You are receiving this because you are subscribed to this thread. Message ID: <whatwg/fetch/pull/1823/review/2828486239@github.com>
Received on Friday, 9 May 2025 14:11:27 UTC