- From: jugglinmike <notifications@github.com>
- Date: Thu, 18 Apr 2019 20:56:44 +0000 (UTC)
- To: whatwg/xhr <xhr@noreply.github.com>
- Cc: Subscribed <subscribed@noreply.github.com>
- Message-ID: <whatwg/xhr/pull/246/review/228496744@github.com>
jugglinmike commented on this pull request.
> A subclass of `XMLHttpRequestEventTarget` is `<b>this</b>` in most cases.
Understood. My confusion isn't so much about what `this` refers to--it's that I don't know which target is intended in each case. I've taken a first shot at this using a mix of inference and observation. Please take care to verify each as my guesswork is likely flawed.
Also, I'm referencing the term with the Bikeshed syntax, `[=this=]` so that it is cross-linked to WebIDL.
> @@ -809,7 +809,7 @@ method must run these steps:
<p>If the <a>synchronous flag</a> is unset, then:
<ol>
- <li><p><a>Fire a progress event</a> named <a event><code>loadstart</code></a> with 0 and 0.
+ <li><p><a>Fire a progress event</a> named <a event><code>loadstart</code></a> at [=this=] with 0 and 0.
This seems like it should be the request object since a `loadstart` event is already being fired at the `XMLHttpRequestUpload` in the next step. However, since that's done conditionally and with different parameters, using `XMLHttpRequestUpload` wouldn't be completely redundant.
> @@ -957,7 +957,7 @@ method must run these steps:
<a>state</a> changes.
<li><p><a>Fire a progress event</a> named
- <a event><code>progress</code></a> with <var>response</var>'s
+ <a event><code>progress</code></a> at [=this=] with <var>response</var>'s
The intended target isn't clear in context. Firefox, Chrome, Edge, and Safari all fire this event at the request object.
> @@ -1039,7 +1039,7 @@ method must run these steps:
<a for=body>total bytes</a>.
<li><p>If the <a>synchronous flag</a> is unset, <a>fire a progress event</a> named
- <a event><code>progress</code></a> with <var>transmitted</var> and <var>length</var>.
+ <a event><code>progress</code></a> at [=this=] with <var>transmitted</var> and <var>length</var>.
The intended target isn't clear in context. Firefox, Chrome, Edge, and Safari all fire this event at the request object.
> @@ -1048,9 +1048,11 @@ method must run these steps:
<li><p><a>Fire an event</a> named <a event><code>readystatechange</code></a>.
<li><p><a>Fire a progress event</a> named <a event><code>load</code></a>
+ at [=this=]
The intended target isn't clear in context. Firefox, Chrome, Edge, and Safari all fire this event at the request object.
> with <var>transmitted</var> and <var>length</var>.
<li><p><a>Fire a progress event</a> named <a event><code>loadend</code></a>
+ at [=this=]'s {{XMLHttpRequestUpload}} object
The intended target isn't clear in context. Firefox, Chrome, Edge, and Safari all fire this event at the request upload object.
> @@ -1122,10 +1124,10 @@ exception <var>exception</var> are:
</ol>
<li><p><a>Fire a progress event</a> named
- <var>event</var> with 0 and 0.
+ <var>event</var> at [=this=] with 0 and 0.
Since a corresponding event is fired at the request upload object in the previous step, I'm fairly certain the intended target here is the request object.
>
<li><p><a>Fire a progress event</a> named
- <a event><code>loadend</code></a> with 0 and 0.
+ <a event><code>loadend</code></a> at [=this=] with 0 and 0.
Since a corresponding event is fired at the request upload object in the previous step, I'm fairly certain the intended target here is the request object.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/whatwg/xhr/pull/246#pullrequestreview-228496744
Received on Thursday, 18 April 2019 20:57:08 UTC