[html5] r8453 - [e] (0) Move activation stuff from the part of the spec that talks about element [...]

whatwg at whatwg.org whatwg at whatwg.org
Mon Feb 3 13:39:33 PST 2014


Author: ianh
Date: 2014-02-03 13:39:32 -0800 (Mon, 03 Feb 2014)
New Revision: 8453

Modified:
   complete.html
   index
   source
Log:
[e] (0) Move activation stuff from the part of the spec that talks about elements to the part of the spec that talks about user interaction
Fixing https://www.w3.org/Bugs/Public/show_bug.cgi?id=24480
Affected topics: DOM APIs, HTML

Modified: complete.html
===================================================================
--- complete.html	2014-02-03 20:29:58 UTC (rev 8452)
+++ complete.html	2014-02-03 21:39:32 UTC (rev 8453)
@@ -9956,109 +9956,8 @@
    <li><code><a href=#the-select-element>select</a></code></li>
    <li><code><a href=#the-textarea-element>textarea</a></code></li>
    <li><code><a href=#the-video-element>video</a></code> (if the <code title=attr-media-controls><a href=#attr-media-controls>controls</a></code> attribute is present)</li>
-  </ul><p>Certain elements in HTML have an <a href=#activation-behavior>activation behavior</a>, which means that the user
-  can activate them. This triggers a sequence of events dependent on the activation mechanism, and
-  normally culminating in a <code title=event-click><a href=#event-click>click</a></code> event<span class=impl>, as
-  described below</span>.</p>
+  </ul><h6 id=palpable-content-0><span class=secno>3.2.4.1.8 </span>Palpable content</h6>
 
-  <div class=impl>
-
-  <p>The user agent should allow the user to manually trigger elements that have an <a href=#activation-behavior>activation
-  behavior</a>, for instance using keyboard or voice input, or through mouse clicks. When the
-  user triggers an element with a defined <a href=#activation-behavior>activation behavior</a> in a manner other than
-  clicking it, the default action of the interaction event must be to <a href=#run-synthetic-click-activation-steps>run synthetic click
-  activation steps</a> on the element.</p> <!-- interaction event spec point -->
-
-  <p>Each element has a <var title="">click in progress</var> flag, initially set to false.</p>
-
-  <p>When a user agent is to <dfn id=run-synthetic-click-activation-steps>run synthetic click activation steps</dfn> on an element, the user
-  agent must run the following steps:</p>
-
-  <ol><li><p>If the element's <var title="">click in progress</var> flag is set to true, then abort
-   these steps.</li>
-
-   <li><p>Set the <var title="">click in progress</var> flag on the element to true.</li>
-
-   <li><p><a href=#run-pre-click-activation-steps>Run pre-click activation steps</a> on the element.</li>
-
-   <li><p><a href=#fire-a-click-event>Fire a <code title=event-click>click</code> event</a> at the element. If the
-   <a href=#run-synthetic-click-activation-steps>run synthetic click activation steps</a> algorithm was invoked because the <code title=dom-click><a href=#dom-click>click()</a></code> method was invoked, then the <code title=dom-event-isTrusted><a href=#dom-event-istrusted>isTrusted</a></code> attribute must be initialized to false.</li>
-
-   <li>
-
-    <p>If this <code title=event-click><a href=#event-click>click</a></code> event is not canceled, <a href=#run-post-click-activation-steps>run post-click
-    activation steps</a> on the element.</p>
-
-    <p>If the event <em>is</em> canceled, the user agent must <a href=#run-canceled-activation-steps>run canceled activation
-    steps</a> on the element instead.</p>
-
-   </li>
-
-   <li><p>Set the <var title="">click in progress</var> flag on the element to false.</li>
-
-  </ol><p>When a pointing device is clicked, the user agent must run these steps:</p>
-
-  <ol><li><p>If the element's <var title="">click in progress</var> flag is set to true, then abort
-   these steps.</li>
-
-   <li><p>Set the <var title="">click in progress</var> flag on the element to true.</li>
-
-   <li><p>Let <var title="">e</var> be the <a href=#nearest-activatable-element>nearest activatable element</a> of the element
-   designated by the user (defined below), if any.</li>
-
-   <li><p>If there is an element <var title="">e</var>, <a href=#run-pre-click-activation-steps>run pre-click activation steps</a>
-   on it.</li>
-
-   <li>
-
-    <p><a href=#concept-event-dispatch title=concept-event-dispatch>Dispatch</a> the required <code title=event-click><a href=#event-click>click</a></code> event.</p> <!-- interaction event spec point -->
-
-    <p>If there is an element <var title="">e</var> and the <code title=event-click><a href=#event-click>click</a></code>
-    event is not canceled, <a href=#run-post-click-activation-steps>run post-click activation steps</a> on element <var title="">e</var>.</p>
-
-    <p>If there is an element <var title="">e</var> and the event <em>is</em> canceled, <a href=#run-canceled-activation-steps>run
-    canceled activation steps</a> on element <var title="">e</var>.</p>
-
-   </li>
-
-   <li><p>Set the <var title="">click in progress</var> flag on the element to false.</li>
-
-  </ol><p class=note>The algorithms above don't run for arbitrary synthetic events dispatched by author
-  script. The <code title=dom-click><a href=#dom-click>click()</a></code> method can be used to make the <a href=#run-synthetic-click-activation-steps>run
-  synthetic click activation steps</a> algorithm happen programmatically.</p>
-
-  <p class=note>Click-focusing behavior (e.g. the focusing of a text field when user clicks in
-  one) typically happens before the click, when the mouse button is first depressed, and is
-  therefore not discussed here.</p> <!-- interaction event spec point -->
-
-  <p>Given an element <var title="">target</var>, the <dfn id=nearest-activatable-element>nearest activatable element</dfn> is the
-  element returned by the following algorithm:</p>
-
-  <ol><li><p>If <var title="">target</var> has a defined <a href=#activation-behavior>activation behavior</a>, then return
-   <var title="">target</var> and abort these steps.</li>
-
-   <li><p>If <var title="">target</var> has a parent element, then set <var title="">target</var> to
-   that parent element and return to the first step.</li>
-
-   <li><p>Otherwise, there is no <a href=#nearest-activatable-element>nearest activatable element</a>.</li>
-
-  </ol><p>When a user agent is to <dfn id=run-pre-click-activation-steps>run pre-click activation steps</dfn> on an element, it must run
-  the <dfn id=pre-click-activation-steps>pre-click activation steps</dfn> defined for that element, if any.</p>
-
-  <p>When a user agent is to <dfn id=run-canceled-activation-steps>run canceled activation steps</dfn> on an element, it must run the
-  <dfn id=canceled-activation-steps>canceled activation steps</dfn> defined for that element, if any.</p>
-
-  <p>When a user agent is to <dfn id=run-post-click-activation-steps>run post-click activation steps</dfn> on an element, it must run
-  the <dfn id=activation-behavior>activation behavior</dfn> defined for that element, if any. Activation behaviors can
-  refer to the <code title=event-click><a href=#event-click>click</a></code> event that was fired by the steps above
-  leading up to this point.</p>
-
-  </div>
-
-
-
-  <h6 id=palpable-content-0><span class=secno>3.2.4.1.8 </span>Palpable content</h6>
-
   <p>As a general rule, elements whose content model allows any <a href=#flow-content>flow content</a> or
   <a href=#phrasing-content>phrasing content</a> should have at least one node in its <a href=#concept-html-contents title=concept-html-contents>contents</a> that is <dfn id=palpable-content>palpable
   content</dfn> and that does not have the <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code> attribute
@@ -76029,9 +75928,110 @@
   content attribute of the same name.</p>
 
 
-<!--TOPIC:DOM APIs-->
+
   <h3 id=activation><span class=secno>8.3 </span>Activation</h3>
 
+  <p>Certain elements in HTML have an <a href=#activation-behavior>activation behavior</a>, which means that the user
+  can activate them. This triggers a sequence of events dependent on the activation mechanism, and
+  normally culminating in a <code title=event-click><a href=#event-click>click</a></code> event<span class=impl>, as
+  described below</span>.</p>
+
+  <div class=impl>
+
+  <p>The user agent should allow the user to manually trigger elements that have an <a href=#activation-behavior>activation
+  behavior</a>, for instance using keyboard or voice input, or through mouse clicks. When the
+  user triggers an element with a defined <a href=#activation-behavior>activation behavior</a> in a manner other than
+  clicking it, the default action of the interaction event must be to <a href=#run-synthetic-click-activation-steps>run synthetic click
+  activation steps</a> on the element.</p> <!-- interaction event spec point -->
+
+  <p>Each element has a <var title="">click in progress</var> flag, initially set to false.</p>
+
+  <p>When a user agent is to <dfn id=run-synthetic-click-activation-steps>run synthetic click activation steps</dfn> on an element, the user
+  agent must run the following steps:</p>
+
+  <ol><li><p>If the element's <var title="">click in progress</var> flag is set to true, then abort
+   these steps.</li>
+
+   <li><p>Set the <var title="">click in progress</var> flag on the element to true.</li>
+
+   <li><p><a href=#run-pre-click-activation-steps>Run pre-click activation steps</a> on the element.</li>
+
+   <li><p><a href=#fire-a-click-event>Fire a <code title=event-click>click</code> event</a> at the element. If the
+   <a href=#run-synthetic-click-activation-steps>run synthetic click activation steps</a> algorithm was invoked because the <code title=dom-click><a href=#dom-click>click()</a></code> method was invoked, then the <code title=dom-event-isTrusted><a href=#dom-event-istrusted>isTrusted</a></code> attribute must be initialized to false.</li>
+
+   <li>
+
+    <p>If this <code title=event-click><a href=#event-click>click</a></code> event is not canceled, <a href=#run-post-click-activation-steps>run post-click
+    activation steps</a> on the element.</p>
+
+    <p>If the event <em>is</em> canceled, the user agent must <a href=#run-canceled-activation-steps>run canceled activation
+    steps</a> on the element instead.</p>
+
+   </li>
+
+   <li><p>Set the <var title="">click in progress</var> flag on the element to false.</li>
+
+  </ol><p>When a pointing device is clicked, the user agent must run these steps:</p>
+
+  <ol><li><p>If the element's <var title="">click in progress</var> flag is set to true, then abort
+   these steps.</li>
+
+   <li><p>Set the <var title="">click in progress</var> flag on the element to true.</li>
+
+   <li><p>Let <var title="">e</var> be the <a href=#nearest-activatable-element>nearest activatable element</a> of the element
+   designated by the user (defined below), if any.</li>
+
+   <li><p>If there is an element <var title="">e</var>, <a href=#run-pre-click-activation-steps>run pre-click activation steps</a>
+   on it.</li>
+
+   <li>
+
+    <p><a href=#concept-event-dispatch title=concept-event-dispatch>Dispatch</a> the required <code title=event-click><a href=#event-click>click</a></code> event.</p> <!-- interaction event spec point -->
+
+    <p>If there is an element <var title="">e</var> and the <code title=event-click><a href=#event-click>click</a></code>
+    event is not canceled, <a href=#run-post-click-activation-steps>run post-click activation steps</a> on element <var title="">e</var>.</p>
+
+    <p>If there is an element <var title="">e</var> and the event <em>is</em> canceled, <a href=#run-canceled-activation-steps>run
+    canceled activation steps</a> on element <var title="">e</var>.</p>
+
+   </li>
+
+   <li><p>Set the <var title="">click in progress</var> flag on the element to false.</li>
+
+  </ol><p class=note>The algorithms above don't run for arbitrary synthetic events dispatched by author
+  script. The <code title=dom-click><a href=#dom-click>click()</a></code> method can be used to make the <a href=#run-synthetic-click-activation-steps>run
+  synthetic click activation steps</a> algorithm happen programmatically.</p>
+
+  <p class=note>Click-focusing behavior (e.g. the focusing of a text field when user clicks in
+  one) typically happens before the click, when the mouse button is first depressed, and is
+  therefore not discussed here.</p> <!-- interaction event spec point -->
+
+  <p>Given an element <var title="">target</var>, the <dfn id=nearest-activatable-element>nearest activatable element</dfn> is the
+  element returned by the following algorithm:</p>
+
+  <ol><li><p>If <var title="">target</var> has a defined <a href=#activation-behavior>activation behavior</a>, then return
+   <var title="">target</var> and abort these steps.</li>
+
+   <li><p>If <var title="">target</var> has a parent element, then set <var title="">target</var> to
+   that parent element and return to the first step.</li>
+
+   <li><p>Otherwise, there is no <a href=#nearest-activatable-element>nearest activatable element</a>.</li>
+
+  </ol><p>When a user agent is to <dfn id=run-pre-click-activation-steps>run pre-click activation steps</dfn> on an element, it must run
+  the <dfn id=pre-click-activation-steps>pre-click activation steps</dfn> defined for that element, if any.</p>
+
+  <p>When a user agent is to <dfn id=run-canceled-activation-steps>run canceled activation steps</dfn> on an element, it must run the
+  <dfn id=canceled-activation-steps>canceled activation steps</dfn> defined for that element, if any.</p>
+
+  <p>When a user agent is to <dfn id=run-post-click-activation-steps>run post-click activation steps</dfn> on an element, it must run
+  the <dfn id=activation-behavior>activation behavior</dfn> defined for that element, if any. Activation behaviors can
+  refer to the <code title=event-click><a href=#event-click>click</a></code> event that was fired by the steps above
+  leading up to this point.</p>
+
+  </div>
+
+<!--TOPIC:DOM APIs-->
+
   <!-- v2 idea: HTMLImageElement.click(x, y); or clickPoint(), if click() can't be done in IE; can
        this be emulated in IE by posting a synthetic mouse click event with those X and Y coords?
        (ack Csaba Gabor)

Modified: index
===================================================================
--- index	2014-02-03 20:29:58 UTC (rev 8452)
+++ index	2014-02-03 21:39:32 UTC (rev 8453)
@@ -9956,109 +9956,8 @@
    <li><code><a href=#the-select-element>select</a></code></li>
    <li><code><a href=#the-textarea-element>textarea</a></code></li>
    <li><code><a href=#the-video-element>video</a></code> (if the <code title=attr-media-controls><a href=#attr-media-controls>controls</a></code> attribute is present)</li>
-  </ul><p>Certain elements in HTML have an <a href=#activation-behavior>activation behavior</a>, which means that the user
-  can activate them. This triggers a sequence of events dependent on the activation mechanism, and
-  normally culminating in a <code title=event-click><a href=#event-click>click</a></code> event<span class=impl>, as
-  described below</span>.</p>
+  </ul><h6 id=palpable-content-0><span class=secno>3.2.4.1.8 </span>Palpable content</h6>
 
-  <div class=impl>
-
-  <p>The user agent should allow the user to manually trigger elements that have an <a href=#activation-behavior>activation
-  behavior</a>, for instance using keyboard or voice input, or through mouse clicks. When the
-  user triggers an element with a defined <a href=#activation-behavior>activation behavior</a> in a manner other than
-  clicking it, the default action of the interaction event must be to <a href=#run-synthetic-click-activation-steps>run synthetic click
-  activation steps</a> on the element.</p> <!-- interaction event spec point -->
-
-  <p>Each element has a <var title="">click in progress</var> flag, initially set to false.</p>
-
-  <p>When a user agent is to <dfn id=run-synthetic-click-activation-steps>run synthetic click activation steps</dfn> on an element, the user
-  agent must run the following steps:</p>
-
-  <ol><li><p>If the element's <var title="">click in progress</var> flag is set to true, then abort
-   these steps.</li>
-
-   <li><p>Set the <var title="">click in progress</var> flag on the element to true.</li>
-
-   <li><p><a href=#run-pre-click-activation-steps>Run pre-click activation steps</a> on the element.</li>
-
-   <li><p><a href=#fire-a-click-event>Fire a <code title=event-click>click</code> event</a> at the element. If the
-   <a href=#run-synthetic-click-activation-steps>run synthetic click activation steps</a> algorithm was invoked because the <code title=dom-click><a href=#dom-click>click()</a></code> method was invoked, then the <code title=dom-event-isTrusted><a href=#dom-event-istrusted>isTrusted</a></code> attribute must be initialized to false.</li>
-
-   <li>
-
-    <p>If this <code title=event-click><a href=#event-click>click</a></code> event is not canceled, <a href=#run-post-click-activation-steps>run post-click
-    activation steps</a> on the element.</p>
-
-    <p>If the event <em>is</em> canceled, the user agent must <a href=#run-canceled-activation-steps>run canceled activation
-    steps</a> on the element instead.</p>
-
-   </li>
-
-   <li><p>Set the <var title="">click in progress</var> flag on the element to false.</li>
-
-  </ol><p>When a pointing device is clicked, the user agent must run these steps:</p>
-
-  <ol><li><p>If the element's <var title="">click in progress</var> flag is set to true, then abort
-   these steps.</li>
-
-   <li><p>Set the <var title="">click in progress</var> flag on the element to true.</li>
-
-   <li><p>Let <var title="">e</var> be the <a href=#nearest-activatable-element>nearest activatable element</a> of the element
-   designated by the user (defined below), if any.</li>
-
-   <li><p>If there is an element <var title="">e</var>, <a href=#run-pre-click-activation-steps>run pre-click activation steps</a>
-   on it.</li>
-
-   <li>
-
-    <p><a href=#concept-event-dispatch title=concept-event-dispatch>Dispatch</a> the required <code title=event-click><a href=#event-click>click</a></code> event.</p> <!-- interaction event spec point -->
-
-    <p>If there is an element <var title="">e</var> and the <code title=event-click><a href=#event-click>click</a></code>
-    event is not canceled, <a href=#run-post-click-activation-steps>run post-click activation steps</a> on element <var title="">e</var>.</p>
-
-    <p>If there is an element <var title="">e</var> and the event <em>is</em> canceled, <a href=#run-canceled-activation-steps>run
-    canceled activation steps</a> on element <var title="">e</var>.</p>
-
-   </li>
-
-   <li><p>Set the <var title="">click in progress</var> flag on the element to false.</li>
-
-  </ol><p class=note>The algorithms above don't run for arbitrary synthetic events dispatched by author
-  script. The <code title=dom-click><a href=#dom-click>click()</a></code> method can be used to make the <a href=#run-synthetic-click-activation-steps>run
-  synthetic click activation steps</a> algorithm happen programmatically.</p>
-
-  <p class=note>Click-focusing behavior (e.g. the focusing of a text field when user clicks in
-  one) typically happens before the click, when the mouse button is first depressed, and is
-  therefore not discussed here.</p> <!-- interaction event spec point -->
-
-  <p>Given an element <var title="">target</var>, the <dfn id=nearest-activatable-element>nearest activatable element</dfn> is the
-  element returned by the following algorithm:</p>
-
-  <ol><li><p>If <var title="">target</var> has a defined <a href=#activation-behavior>activation behavior</a>, then return
-   <var title="">target</var> and abort these steps.</li>
-
-   <li><p>If <var title="">target</var> has a parent element, then set <var title="">target</var> to
-   that parent element and return to the first step.</li>
-
-   <li><p>Otherwise, there is no <a href=#nearest-activatable-element>nearest activatable element</a>.</li>
-
-  </ol><p>When a user agent is to <dfn id=run-pre-click-activation-steps>run pre-click activation steps</dfn> on an element, it must run
-  the <dfn id=pre-click-activation-steps>pre-click activation steps</dfn> defined for that element, if any.</p>
-
-  <p>When a user agent is to <dfn id=run-canceled-activation-steps>run canceled activation steps</dfn> on an element, it must run the
-  <dfn id=canceled-activation-steps>canceled activation steps</dfn> defined for that element, if any.</p>
-
-  <p>When a user agent is to <dfn id=run-post-click-activation-steps>run post-click activation steps</dfn> on an element, it must run
-  the <dfn id=activation-behavior>activation behavior</dfn> defined for that element, if any. Activation behaviors can
-  refer to the <code title=event-click><a href=#event-click>click</a></code> event that was fired by the steps above
-  leading up to this point.</p>
-
-  </div>
-
-
-
-  <h6 id=palpable-content-0><span class=secno>3.2.4.1.8 </span>Palpable content</h6>
-
   <p>As a general rule, elements whose content model allows any <a href=#flow-content>flow content</a> or
   <a href=#phrasing-content>phrasing content</a> should have at least one node in its <a href=#concept-html-contents title=concept-html-contents>contents</a> that is <dfn id=palpable-content>palpable
   content</dfn> and that does not have the <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code> attribute
@@ -76029,9 +75928,110 @@
   content attribute of the same name.</p>
 
 
-<!--TOPIC:DOM APIs-->
+
   <h3 id=activation><span class=secno>8.3 </span>Activation</h3>
 
+  <p>Certain elements in HTML have an <a href=#activation-behavior>activation behavior</a>, which means that the user
+  can activate them. This triggers a sequence of events dependent on the activation mechanism, and
+  normally culminating in a <code title=event-click><a href=#event-click>click</a></code> event<span class=impl>, as
+  described below</span>.</p>
+
+  <div class=impl>
+
+  <p>The user agent should allow the user to manually trigger elements that have an <a href=#activation-behavior>activation
+  behavior</a>, for instance using keyboard or voice input, or through mouse clicks. When the
+  user triggers an element with a defined <a href=#activation-behavior>activation behavior</a> in a manner other than
+  clicking it, the default action of the interaction event must be to <a href=#run-synthetic-click-activation-steps>run synthetic click
+  activation steps</a> on the element.</p> <!-- interaction event spec point -->
+
+  <p>Each element has a <var title="">click in progress</var> flag, initially set to false.</p>
+
+  <p>When a user agent is to <dfn id=run-synthetic-click-activation-steps>run synthetic click activation steps</dfn> on an element, the user
+  agent must run the following steps:</p>
+
+  <ol><li><p>If the element's <var title="">click in progress</var> flag is set to true, then abort
+   these steps.</li>
+
+   <li><p>Set the <var title="">click in progress</var> flag on the element to true.</li>
+
+   <li><p><a href=#run-pre-click-activation-steps>Run pre-click activation steps</a> on the element.</li>
+
+   <li><p><a href=#fire-a-click-event>Fire a <code title=event-click>click</code> event</a> at the element. If the
+   <a href=#run-synthetic-click-activation-steps>run synthetic click activation steps</a> algorithm was invoked because the <code title=dom-click><a href=#dom-click>click()</a></code> method was invoked, then the <code title=dom-event-isTrusted><a href=#dom-event-istrusted>isTrusted</a></code> attribute must be initialized to false.</li>
+
+   <li>
+
+    <p>If this <code title=event-click><a href=#event-click>click</a></code> event is not canceled, <a href=#run-post-click-activation-steps>run post-click
+    activation steps</a> on the element.</p>
+
+    <p>If the event <em>is</em> canceled, the user agent must <a href=#run-canceled-activation-steps>run canceled activation
+    steps</a> on the element instead.</p>
+
+   </li>
+
+   <li><p>Set the <var title="">click in progress</var> flag on the element to false.</li>
+
+  </ol><p>When a pointing device is clicked, the user agent must run these steps:</p>
+
+  <ol><li><p>If the element's <var title="">click in progress</var> flag is set to true, then abort
+   these steps.</li>
+
+   <li><p>Set the <var title="">click in progress</var> flag on the element to true.</li>
+
+   <li><p>Let <var title="">e</var> be the <a href=#nearest-activatable-element>nearest activatable element</a> of the element
+   designated by the user (defined below), if any.</li>
+
+   <li><p>If there is an element <var title="">e</var>, <a href=#run-pre-click-activation-steps>run pre-click activation steps</a>
+   on it.</li>
+
+   <li>
+
+    <p><a href=#concept-event-dispatch title=concept-event-dispatch>Dispatch</a> the required <code title=event-click><a href=#event-click>click</a></code> event.</p> <!-- interaction event spec point -->
+
+    <p>If there is an element <var title="">e</var> and the <code title=event-click><a href=#event-click>click</a></code>
+    event is not canceled, <a href=#run-post-click-activation-steps>run post-click activation steps</a> on element <var title="">e</var>.</p>
+
+    <p>If there is an element <var title="">e</var> and the event <em>is</em> canceled, <a href=#run-canceled-activation-steps>run
+    canceled activation steps</a> on element <var title="">e</var>.</p>
+
+   </li>
+
+   <li><p>Set the <var title="">click in progress</var> flag on the element to false.</li>
+
+  </ol><p class=note>The algorithms above don't run for arbitrary synthetic events dispatched by author
+  script. The <code title=dom-click><a href=#dom-click>click()</a></code> method can be used to make the <a href=#run-synthetic-click-activation-steps>run
+  synthetic click activation steps</a> algorithm happen programmatically.</p>
+
+  <p class=note>Click-focusing behavior (e.g. the focusing of a text field when user clicks in
+  one) typically happens before the click, when the mouse button is first depressed, and is
+  therefore not discussed here.</p> <!-- interaction event spec point -->
+
+  <p>Given an element <var title="">target</var>, the <dfn id=nearest-activatable-element>nearest activatable element</dfn> is the
+  element returned by the following algorithm:</p>
+
+  <ol><li><p>If <var title="">target</var> has a defined <a href=#activation-behavior>activation behavior</a>, then return
+   <var title="">target</var> and abort these steps.</li>
+
+   <li><p>If <var title="">target</var> has a parent element, then set <var title="">target</var> to
+   that parent element and return to the first step.</li>
+
+   <li><p>Otherwise, there is no <a href=#nearest-activatable-element>nearest activatable element</a>.</li>
+
+  </ol><p>When a user agent is to <dfn id=run-pre-click-activation-steps>run pre-click activation steps</dfn> on an element, it must run
+  the <dfn id=pre-click-activation-steps>pre-click activation steps</dfn> defined for that element, if any.</p>
+
+  <p>When a user agent is to <dfn id=run-canceled-activation-steps>run canceled activation steps</dfn> on an element, it must run the
+  <dfn id=canceled-activation-steps>canceled activation steps</dfn> defined for that element, if any.</p>
+
+  <p>When a user agent is to <dfn id=run-post-click-activation-steps>run post-click activation steps</dfn> on an element, it must run
+  the <dfn id=activation-behavior>activation behavior</dfn> defined for that element, if any. Activation behaviors can
+  refer to the <code title=event-click><a href=#event-click>click</a></code> event that was fired by the steps above
+  leading up to this point.</p>
+
+  </div>
+
+<!--TOPIC:DOM APIs-->
+
   <!-- v2 idea: HTMLImageElement.click(x, y); or clickPoint(), if click() can't be done in IE; can
        this be emulated in IE by posting a synthetic mouse click event with those X and Y coords?
        (ack Csaba Gabor)

Modified: source
===================================================================
--- source	2014-02-03 20:29:58 UTC (rev 8452)
+++ source	2014-02-03 21:39:32 UTC (rev 8453)
@@ -9798,123 +9798,8 @@
    <li><code>video</code> (if the <code data-x="attr-media-controls">controls</code> attribute is present)</li>
   </ul>
 
-  <p>Certain elements in HTML have an <span>activation behavior</span>, which means that the user
-  can activate them. This triggers a sequence of events dependent on the activation mechanism, and
-  normally culminating in a <code data-x="event-click">click</code> event<span class="impl">, as
-  described below</span>.</p>
 
-  <div class="impl">
 
-  <p>The user agent should allow the user to manually trigger elements that have an <span>activation
-  behavior</span>, for instance using keyboard or voice input, or through mouse clicks. When the
-  user triggers an element with a defined <span>activation behavior</span> in a manner other than
-  clicking it, the default action of the interaction event must be to <span>run synthetic click
-  activation steps</span> on the element.</p> <!-- interaction event spec point -->
-
-  <p>Each element has a <var data-x="">click in progress</var> flag, initially set to false.</p>
-
-  <p>When a user agent is to <dfn>run synthetic click activation steps</dfn> on an element, the user
-  agent must run the following steps:</p>
-
-  <ol>
-
-   <li><p>If the element's <var data-x="">click in progress</var> flag is set to true, then abort
-   these steps.</p></li>
-
-   <li><p>Set the <var data-x="">click in progress</var> flag on the element to true.</p></li>
-
-   <li><p><span>Run pre-click activation steps</span> on the element.</p></li>
-
-   <li><p><span>Fire a <code data-x="event-click">click</code> event</span> at the element. If the
-   <span>run synthetic click activation steps</span> algorithm was invoked because the <code
-   data-x="dom-click">click()</code> method was invoked, then the <code
-   data-x="dom-event-isTrusted">isTrusted</code> attribute must be initialized to false.</p></li>
-
-   <li>
-
-    <p>If this <code data-x="event-click">click</code> event is not canceled, <span>run post-click
-    activation steps</span> on the element.</p>
-
-    <p>If the event <em>is</em> canceled, the user agent must <span>run canceled activation
-    steps</span> on the element instead.</p>
-
-   </li>
-
-   <li><p>Set the <var data-x="">click in progress</var> flag on the element to false.</p></li>
-
-  </ol>
-
-  <p>When a pointing device is clicked, the user agent must run these steps:</p>
-
-  <ol>
-
-   <li><p>If the element's <var data-x="">click in progress</var> flag is set to true, then abort
-   these steps.</p></li>
-
-   <li><p>Set the <var data-x="">click in progress</var> flag on the element to true.</p></li>
-
-   <li><p>Let <var data-x="">e</var> be the <span>nearest activatable element</span> of the element
-   designated by the user (defined below), if any.</p></li>
-
-   <li><p>If there is an element <var data-x="">e</var>, <span>run pre-click activation steps</span>
-   on it.</p></li>
-
-   <li>
-
-    <p><span data-x="concept-event-dispatch">Dispatch</span> the required <code
-    data-x="event-click">click</code> event.</p> <!-- interaction event spec point -->
-
-    <p>If there is an element <var data-x="">e</var> and the <code data-x="event-click">click</code>
-    event is not canceled, <span>run post-click activation steps</span> on element <var
-    data-x="">e</var>.</p>
-
-    <p>If there is an element <var data-x="">e</var> and the event <em>is</em> canceled, <span>run
-    canceled activation steps</span> on element <var data-x="">e</var>.</p>
-
-   </li>
-
-   <li><p>Set the <var data-x="">click in progress</var> flag on the element to false.</p></li>
-
-  </ol>
-
-  <p class="note">The algorithms above don't run for arbitrary synthetic events dispatched by author
-  script. The <code data-x="dom-click">click()</code> method can be used to make the <span>run
-  synthetic click activation steps</span> algorithm happen programmatically.</p>
-
-  <p class="note">Click-focusing behavior (e.g. the focusing of a text field when user clicks in
-  one) typically happens before the click, when the mouse button is first depressed, and is
-  therefore not discussed here.</p> <!-- interaction event spec point -->
-
-  <p>Given an element <var data-x="">target</var>, the <dfn>nearest activatable element</dfn> is the
-  element returned by the following algorithm:</p>
-
-  <ol>
-
-   <li><p>If <var data-x="">target</var> has a defined <span>activation behavior</span>, then return
-   <var data-x="">target</var> and abort these steps.</p></li>
-
-   <li><p>If <var data-x="">target</var> has a parent element, then set <var data-x="">target</var> to
-   that parent element and return to the first step.</p></li>
-
-   <li><p>Otherwise, there is no <span>nearest activatable element</span>.</p></li>
-
-  </ol>
-
-  <p>When a user agent is to <dfn>run pre-click activation steps</dfn> on an element, it must run
-  the <dfn>pre-click activation steps</dfn> defined for that element, if any.</p>
-
-  <p>When a user agent is to <dfn>run canceled activation steps</dfn> on an element, it must run the
-  <dfn>canceled activation steps</dfn> defined for that element, if any.</p>
-
-  <p>When a user agent is to <dfn>run post-click activation steps</dfn> on an element, it must run
-  the <dfn>activation behavior</dfn> defined for that element, if any. Activation behaviors can
-  refer to the <code data-x="event-click">click</code> event that was fired by the steps above
-  leading up to this point.</p>
-
-  </div>
-
-
-
   <h6>Palpable content</h6>
 
   <p>As a general rule, elements whose content model allows any <span>flow content</span> or
@@ -85067,9 +84952,126 @@
   content attribute of the same name.</p>
 
 
-<!--TOPIC:DOM APIs-->
+
   <h3>Activation</h3>
 
+  <p>Certain elements in HTML have an <span>activation behavior</span>, which means that the user
+  can activate them. This triggers a sequence of events dependent on the activation mechanism, and
+  normally culminating in a <code data-x="event-click">click</code> event<span class="impl">, as
+  described below</span>.</p>
+
+  <div class="impl">
+
+  <p>The user agent should allow the user to manually trigger elements that have an <span>activation
+  behavior</span>, for instance using keyboard or voice input, or through mouse clicks. When the
+  user triggers an element with a defined <span>activation behavior</span> in a manner other than
+  clicking it, the default action of the interaction event must be to <span>run synthetic click
+  activation steps</span> on the element.</p> <!-- interaction event spec point -->
+
+  <p>Each element has a <var data-x="">click in progress</var> flag, initially set to false.</p>
+
+  <p>When a user agent is to <dfn>run synthetic click activation steps</dfn> on an element, the user
+  agent must run the following steps:</p>
+
+  <ol>
+
+   <li><p>If the element's <var data-x="">click in progress</var> flag is set to true, then abort
+   these steps.</p></li>
+
+   <li><p>Set the <var data-x="">click in progress</var> flag on the element to true.</p></li>
+
+   <li><p><span>Run pre-click activation steps</span> on the element.</p></li>
+
+   <li><p><span>Fire a <code data-x="event-click">click</code> event</span> at the element. If the
+   <span>run synthetic click activation steps</span> algorithm was invoked because the <code
+   data-x="dom-click">click()</code> method was invoked, then the <code
+   data-x="dom-event-isTrusted">isTrusted</code> attribute must be initialized to false.</p></li>
+
+   <li>
+
+    <p>If this <code data-x="event-click">click</code> event is not canceled, <span>run post-click
+    activation steps</span> on the element.</p>
+
+    <p>If the event <em>is</em> canceled, the user agent must <span>run canceled activation
+    steps</span> on the element instead.</p>
+
+   </li>
+
+   <li><p>Set the <var data-x="">click in progress</var> flag on the element to false.</p></li>
+
+  </ol>
+
+  <p>When a pointing device is clicked, the user agent must run these steps:</p>
+
+  <ol>
+
+   <li><p>If the element's <var data-x="">click in progress</var> flag is set to true, then abort
+   these steps.</p></li>
+
+   <li><p>Set the <var data-x="">click in progress</var> flag on the element to true.</p></li>
+
+   <li><p>Let <var data-x="">e</var> be the <span>nearest activatable element</span> of the element
+   designated by the user (defined below), if any.</p></li>
+
+   <li><p>If there is an element <var data-x="">e</var>, <span>run pre-click activation steps</span>
+   on it.</p></li>
+
+   <li>
+
+    <p><span data-x="concept-event-dispatch">Dispatch</span> the required <code
+    data-x="event-click">click</code> event.</p> <!-- interaction event spec point -->
+
+    <p>If there is an element <var data-x="">e</var> and the <code data-x="event-click">click</code>
+    event is not canceled, <span>run post-click activation steps</span> on element <var
+    data-x="">e</var>.</p>
+
+    <p>If there is an element <var data-x="">e</var> and the event <em>is</em> canceled, <span>run
+    canceled activation steps</span> on element <var data-x="">e</var>.</p>
+
+   </li>
+
+   <li><p>Set the <var data-x="">click in progress</var> flag on the element to false.</p></li>
+
+  </ol>
+
+  <p class="note">The algorithms above don't run for arbitrary synthetic events dispatched by author
+  script. The <code data-x="dom-click">click()</code> method can be used to make the <span>run
+  synthetic click activation steps</span> algorithm happen programmatically.</p>
+
+  <p class="note">Click-focusing behavior (e.g. the focusing of a text field when user clicks in
+  one) typically happens before the click, when the mouse button is first depressed, and is
+  therefore not discussed here.</p> <!-- interaction event spec point -->
+
+  <p>Given an element <var data-x="">target</var>, the <dfn>nearest activatable element</dfn> is the
+  element returned by the following algorithm:</p>
+
+  <ol>
+
+   <li><p>If <var data-x="">target</var> has a defined <span>activation behavior</span>, then return
+   <var data-x="">target</var> and abort these steps.</p></li>
+
+   <li><p>If <var data-x="">target</var> has a parent element, then set <var data-x="">target</var> to
+   that parent element and return to the first step.</p></li>
+
+   <li><p>Otherwise, there is no <span>nearest activatable element</span>.</p></li>
+
+  </ol>
+
+  <p>When a user agent is to <dfn>run pre-click activation steps</dfn> on an element, it must run
+  the <dfn>pre-click activation steps</dfn> defined for that element, if any.</p>
+
+  <p>When a user agent is to <dfn>run canceled activation steps</dfn> on an element, it must run the
+  <dfn>canceled activation steps</dfn> defined for that element, if any.</p>
+
+  <p>When a user agent is to <dfn>run post-click activation steps</dfn> on an element, it must run
+  the <dfn>activation behavior</dfn> defined for that element, if any. Activation behaviors can
+  refer to the <code data-x="event-click">click</code> event that was fired by the steps above
+  leading up to this point.</p>
+
+  </div>
+
+<!--TOPIC:DOM APIs-->
+
   <!-- v2 idea: HTMLImageElement.click(x, y); or clickPoint(), if click() can't be done in IE; can
        this be emulated in IE by posting a synthetic mouse click event with those X and Y coords?
        (ack Csaba Gabor)




More information about the Commit-Watchers mailing list