[html5] r8396 - [giow] (2) Make some dragleave and dragenter events have a relatedTarget. Fixing [...]

whatwg at whatwg.org whatwg at whatwg.org
Mon Jan 13 16:43:21 PST 2014


Author: ianh
Date: 2014-01-13 16:43:20 -0800 (Mon, 13 Jan 2014)
New Revision: 8396

Modified:
   complete.html
   index
   source
Log:
[giow] (2) Make some dragleave and dragenter events have a relatedTarget.
Fixing https://www.w3.org/Bugs/Public/show_bug.cgi?id=13524
Affected topics: DOM APIs, HTML

Modified: complete.html
===================================================================
--- complete.html	2014-01-14 00:12:07 UTC (rev 8395)
+++ complete.html	2014-01-14 00:43:20 UTC (rev 8396)
@@ -72470,6 +72470,7 @@
   (except where otherwise stated), and which uses the <code><a href=#event>Event</a></code> interface, must be created
   and <a href=#concept-event-dispatch title=concept-event-dispatch>dispatched</a> at the given target.</p>
 
+<!--CLEANUP-->
   <p><dfn id=fire-a-synthetic-mouse-event title="fire a synthetic mouse event">Firing a synthetic mouse event named <var title="">e</var></dfn> means that an event with the name <var title="">e</var>, which is <a href=#concept-events-trusted title=concept-events-trusted>trusted</a> (except where otherwise stated), does not bubble
   (except where otherwise stated), is not cancelable (except where otherwise stated), and which uses
   the <code><a href=#mouseevent>MouseEvent</a></code> interface, must be created and dispatched at the given target. The
@@ -72477,7 +72478,7 @@
   attributes initialized to 0, its <code title="">ctrlKey</code>, <code title="">shiftKey</code>,
   <code title="">altKey</code>, and <code title="">metaKey</code> attributes initialized according
   to the current state of the key input device, if any (false for any keys that are not available),
-  its <code title="">detail</code> attribute initialized to 1, and its <code title="">relatedTarget</code> attribute initialized to null (except where otherwise stated). The
+  its <code title="">detail</code> attribute initialized to 1, and its <code title=dom-MouseEvent-relatedTarget>relatedTarget</code> attribute initialized to null (except where otherwise stated). The
   <code title="">getModifierState()</code> method on the object must return values appropriately
   describing the state of the key input device at the time the event is created.</p>
 
@@ -77749,12 +77750,16 @@
 
   <div class=impl>
 
+<!--CLEANUP-->
   <p>When a user agent is required to <dfn id=fire-a-dnd-event>fire a DND event</dfn> named <var title="">e</var> at an
-  element, using a particular <a href=#drag-data-store>drag data store</a>, the user agent must run the following
+  element, using a particular <a href=#drag-data-store>drag data store</a>, and optionally with a specific <var title="">related target</var>, the user agent must run the following
   steps:</p>
 
-  <ol><li>
+  <ol><li><p>If not <var title="">related target</var> was provided, set <var title="">related
+   target</var> to null.</li>
 
+   <li>
+
     <p>If <var title="">e</var> is <code title=event-dnd-dragstart><a href=#event-dnd-dragstart>dragstart</a></code>, set the
     <a href=#drag-data-store-mode>drag data store mode</a> to the <a href=#concept-dnd-rw title=concept-dnd-rw>read/write
     mode</a>.</p>
@@ -77818,12 +77823,13 @@
 
    <li>
 
+<!--CLEANUP-->
     <p>Create a <a href=#concept-events-trusted title=concept-events-trusted>trusted</a> <code><a href=#dragevent>DragEvent</a></code> object
     and initialize it to have the given name <var title="">e</var>, to bubble, to be cancelable
     unless <var title="">e</var> is <code title=event-dnd-dragexit><a href=#event-dnd-dragexit>dragexit</a></code>, <code title=event-dnd-dragleave><a href=#event-dnd-dragleave>dragleave</a></code>, or <code title=event-dnd-dragend><a href=#event-dnd-dragend>dragend</a></code>, and to
     have the <code title=dom-UIEvent-detail><a href=#dom-uievent-detail>detail</a></code> attribute initialized to zero, the mouse
     and key attributes initialized according to the state of the input devices as they would be for
-    user interaction events, the <code title="">relatedTarget</code> attribute initialized to null,
+    user interaction events, the <code title=dom-MouseEvent-relatedTarget>relatedTarget</code> attribute initialized to <var title="">related target</var>,
     and the <code title=dom-DragEvent-dataTransfer><a href=#dom-dragevent-datatransfer>dataTransfer</a></code> attribute initialized to
     <var title="">dataTransfer</var>, the <code><a href=#datatransfer>DataTransfer</a></code> object created above.</p>
 
@@ -78172,7 +78178,9 @@
           <p>If the <a href=#immediate-user-selection>immediate user selection</a> is <var title="">new target</var>, then
           leave the <a href=#current-target-element>current target element</a> unchanged.</p>
 
-          <p>Otherwise, <a href=#fire-a-dnd-event>fire a DND event</a> named <code title=event-dnd-dragenter><a href=#event-dnd-dragenter>dragenter</a></code> at <var title="">new target</var>. Then, set the
+<!--CLEANUP-->
+          <p>Otherwise, <a href=#fire-a-dnd-event>fire a DND event</a> named <code title=event-dnd-dragenter><a href=#event-dnd-dragenter>dragenter</a></code> at <var title="">new target</var>, with the
+          current <a href=#current-target-element>current target element</a> as the specific <var title="">related target</var>. Then, set the
           <a href=#current-target-element>current target element</a> to <var title="">new target</var>, regardless of
           whether that event was canceled or not.</p>
 
@@ -78204,7 +78212,7 @@
       <p>If the previous step caused the <a href=#current-target-element>current target element</a> to change, and if the
       previous target element was not null or a part of a non-DOM document, then <a href=#fire-a-dnd-event>fire a DND
       event</a> named <code title=event-dnd-dragleave><a href=#event-dnd-dragleave>dragleave</a></code> at the previous target
-      element.</p>
+      element, with the new <a href=#current-target-element>current target element</a> as the specific <var title="">related target</var>.</p>
 
      </li>
 

Modified: index
===================================================================
--- index	2014-01-14 00:12:07 UTC (rev 8395)
+++ index	2014-01-14 00:43:20 UTC (rev 8396)
@@ -72470,6 +72470,7 @@
   (except where otherwise stated), and which uses the <code><a href=#event>Event</a></code> interface, must be created
   and <a href=#concept-event-dispatch title=concept-event-dispatch>dispatched</a> at the given target.</p>
 
+<!--CLEANUP-->
   <p><dfn id=fire-a-synthetic-mouse-event title="fire a synthetic mouse event">Firing a synthetic mouse event named <var title="">e</var></dfn> means that an event with the name <var title="">e</var>, which is <a href=#concept-events-trusted title=concept-events-trusted>trusted</a> (except where otherwise stated), does not bubble
   (except where otherwise stated), is not cancelable (except where otherwise stated), and which uses
   the <code><a href=#mouseevent>MouseEvent</a></code> interface, must be created and dispatched at the given target. The
@@ -72477,7 +72478,7 @@
   attributes initialized to 0, its <code title="">ctrlKey</code>, <code title="">shiftKey</code>,
   <code title="">altKey</code>, and <code title="">metaKey</code> attributes initialized according
   to the current state of the key input device, if any (false for any keys that are not available),
-  its <code title="">detail</code> attribute initialized to 1, and its <code title="">relatedTarget</code> attribute initialized to null (except where otherwise stated). The
+  its <code title="">detail</code> attribute initialized to 1, and its <code title=dom-MouseEvent-relatedTarget>relatedTarget</code> attribute initialized to null (except where otherwise stated). The
   <code title="">getModifierState()</code> method on the object must return values appropriately
   describing the state of the key input device at the time the event is created.</p>
 
@@ -77749,12 +77750,16 @@
 
   <div class=impl>
 
+<!--CLEANUP-->
   <p>When a user agent is required to <dfn id=fire-a-dnd-event>fire a DND event</dfn> named <var title="">e</var> at an
-  element, using a particular <a href=#drag-data-store>drag data store</a>, the user agent must run the following
+  element, using a particular <a href=#drag-data-store>drag data store</a>, and optionally with a specific <var title="">related target</var>, the user agent must run the following
   steps:</p>
 
-  <ol><li>
+  <ol><li><p>If not <var title="">related target</var> was provided, set <var title="">related
+   target</var> to null.</li>
 
+   <li>
+
     <p>If <var title="">e</var> is <code title=event-dnd-dragstart><a href=#event-dnd-dragstart>dragstart</a></code>, set the
     <a href=#drag-data-store-mode>drag data store mode</a> to the <a href=#concept-dnd-rw title=concept-dnd-rw>read/write
     mode</a>.</p>
@@ -77818,12 +77823,13 @@
 
    <li>
 
+<!--CLEANUP-->
     <p>Create a <a href=#concept-events-trusted title=concept-events-trusted>trusted</a> <code><a href=#dragevent>DragEvent</a></code> object
     and initialize it to have the given name <var title="">e</var>, to bubble, to be cancelable
     unless <var title="">e</var> is <code title=event-dnd-dragexit><a href=#event-dnd-dragexit>dragexit</a></code>, <code title=event-dnd-dragleave><a href=#event-dnd-dragleave>dragleave</a></code>, or <code title=event-dnd-dragend><a href=#event-dnd-dragend>dragend</a></code>, and to
     have the <code title=dom-UIEvent-detail><a href=#dom-uievent-detail>detail</a></code> attribute initialized to zero, the mouse
     and key attributes initialized according to the state of the input devices as they would be for
-    user interaction events, the <code title="">relatedTarget</code> attribute initialized to null,
+    user interaction events, the <code title=dom-MouseEvent-relatedTarget>relatedTarget</code> attribute initialized to <var title="">related target</var>,
     and the <code title=dom-DragEvent-dataTransfer><a href=#dom-dragevent-datatransfer>dataTransfer</a></code> attribute initialized to
     <var title="">dataTransfer</var>, the <code><a href=#datatransfer>DataTransfer</a></code> object created above.</p>
 
@@ -78172,7 +78178,9 @@
           <p>If the <a href=#immediate-user-selection>immediate user selection</a> is <var title="">new target</var>, then
           leave the <a href=#current-target-element>current target element</a> unchanged.</p>
 
-          <p>Otherwise, <a href=#fire-a-dnd-event>fire a DND event</a> named <code title=event-dnd-dragenter><a href=#event-dnd-dragenter>dragenter</a></code> at <var title="">new target</var>. Then, set the
+<!--CLEANUP-->
+          <p>Otherwise, <a href=#fire-a-dnd-event>fire a DND event</a> named <code title=event-dnd-dragenter><a href=#event-dnd-dragenter>dragenter</a></code> at <var title="">new target</var>, with the
+          current <a href=#current-target-element>current target element</a> as the specific <var title="">related target</var>. Then, set the
           <a href=#current-target-element>current target element</a> to <var title="">new target</var>, regardless of
           whether that event was canceled or not.</p>
 
@@ -78204,7 +78212,7 @@
       <p>If the previous step caused the <a href=#current-target-element>current target element</a> to change, and if the
       previous target element was not null or a part of a non-DOM document, then <a href=#fire-a-dnd-event>fire a DND
       event</a> named <code title=event-dnd-dragleave><a href=#event-dnd-dragleave>dragleave</a></code> at the previous target
-      element.</p>
+      element, with the new <a href=#current-target-element>current target element</a> as the specific <var title="">related target</var>.</p>
 
      </li>
 

Modified: source
===================================================================
--- source	2014-01-14 00:12:07 UTC (rev 8395)
+++ source	2014-01-14 00:43:20 UTC (rev 8396)
@@ -81015,6 +81015,7 @@
   (except where otherwise stated), and which uses the <code>Event</code> interface, must be created
   and <span data-x="concept-event-dispatch">dispatched</span> at the given target.</p>
 
+<!--CLEANUP-->
   <p><dfn data-x="fire a synthetic mouse event">Firing a synthetic mouse event named <var
   data-x="">e</var></dfn> means that an event with the name <var data-x="">e</var>, which is <span
   data-x="concept-events-trusted">trusted</span> (except where otherwise stated), does not bubble
@@ -81026,7 +81027,7 @@
   <code data-x="">altKey</code>, and <code data-x="">metaKey</code> attributes initialized according
   to the current state of the key input device, if any (false for any keys that are not available),
   its <code data-x="">detail</code> attribute initialized to 1, and its <code
-  data-x="">relatedTarget</code> attribute initialized to null (except where otherwise stated). The
+  data-x="dom-MouseEvent-relatedTarget">relatedTarget</code> attribute initialized to null (except where otherwise stated). The
   <code data-x="">getModifierState()</code> method on the object must return values appropriately
   describing the state of the key input device at the time the event is created.</p>
 
@@ -86991,12 +86992,16 @@
 
   <div class="impl">
 
+<!--CLEANUP-->
   <p>When a user agent is required to <dfn>fire a DND event</dfn> named <var data-x="">e</var> at an
-  element, using a particular <span>drag data store</span>, the user agent must run the following
+  element, using a particular <span>drag data store</span>, and optionally with a specific <var data-x="">related target</var>, the user agent must run the following
   steps:</p>
 
   <ol>
 
+   <li><p>If not <var data-x="">related target</var> was provided, set <var data-x="">related
+   target</var> to null.</p></li>
+
    <li>
 
     <p>If <var data-x="">e</var> is <code data-x="event-dnd-dragstart">dragstart</code>, set the
@@ -87100,13 +87105,14 @@
 
    <li>
 
+<!--CLEANUP-->
     <p>Create a <span data-x="concept-events-trusted">trusted</span> <code>DragEvent</code> object
     and initialize it to have the given name <var data-x="">e</var>, to bubble, to be cancelable
     unless <var data-x="">e</var> is <code data-x="event-dnd-dragexit">dragexit</code>, <code
     data-x="event-dnd-dragleave">dragleave</code>, or <code data-x="event-dnd-dragend">dragend</code>, and to
     have the <code data-x="dom-UIEvent-detail">detail</code> attribute initialized to zero, the mouse
     and key attributes initialized according to the state of the input devices as they would be for
-    user interaction events, the <code data-x="">relatedTarget</code> attribute initialized to null,
+    user interaction events, the <code data-x="dom-MouseEvent-relatedTarget">relatedTarget</code> attribute initialized to <var data-x="">related target</var>,
     and the <code data-x="dom-DragEvent-dataTransfer">dataTransfer</code> attribute initialized to
     <var data-x="">dataTransfer</var>, the <code>DataTransfer</code> object created above.</p>
 
@@ -87512,8 +87518,10 @@
           <p>If the <span>immediate user selection</span> is <var data-x="">new target</var>, then
           leave the <span>current target element</span> unchanged.</p>
 
+<!--CLEANUP-->
           <p>Otherwise, <span>fire a DND event</span> named <code
-          data-x="event-dnd-dragenter">dragenter</code> at <var data-x="">new target</var>. Then, set the
+          data-x="event-dnd-dragenter">dragenter</code> at <var data-x="">new target</var>, with the
+          current <span>current target element</span> as the specific <var data-x="">related target</var>. Then, set the
           <span>current target element</span> to <var data-x="">new target</var>, regardless of
           whether that event was canceled or not.</p>
 
@@ -87549,7 +87557,8 @@
       <p>If the previous step caused the <span>current target element</span> to change, and if the
       previous target element was not null or a part of a non-DOM document, then <span>fire a DND
       event</span> named <code data-x="event-dnd-dragleave">dragleave</code> at the previous target
-      element.</p>
+      element, with the new <span>current target element</span> as the specific <var
+      data-x="">related target</var>.</p>
 
      </li>
 




More information about the Commit-Watchers mailing list