Remove beforeinput/input events since they are being moved into a separate spec.
authorGary Kacmarcik <garykac@google.com>
Sun, 25 Jan 2015 20:32:40 -0800
changeset 684 5bcdc56bc48c
parent 683 65af363cc24b
child 685 ad15280ceb0c
Remove beforeinput/input events since they are being moved into a separate spec.

See Bug 27827 - Need to remove input/beforeinput event info from D3E and point to input event spec
html/DOM3-Events.html
--- a/html/DOM3-Events.html	Sun Jan 25 20:19:01 2015 -0800
+++ b/html/DOM3-Events.html	Sun Jan 25 20:32:40 2015 -0800
@@ -4138,216 +4138,6 @@
 			</div>
 		</section>  <!-- events-wheelevents -->
 
-		<section id="events-inputevents">
-			<h3>Input Event Types</h3>
-			<p>Input events are sent as notifications whenever the DOM is being updated.</p>
-			
-			<section id="interface-InputEvent">
-				<h4>Interface InputEvent</h4>
-
-				<p class="intro-dom">Introduced in DOM Level 3</p>
-
-				<dl class="idl" title="[Constructor(DOMString typeArg, optional InputEventInit inputEventInitDict)] interface InputEvent : UIEvent">
-					<dt>readonly attribute DOMString data</dt>
-					<dd>
-						<p><code>data</code> holds the value of the characters generated by an input method.
-							This MAY be a single Unicode character or a non-empty sequence of Unicode characters
-							[<cite><a class="normative" href="#references-Unicode">Unicode</a></cite>].
-							Characters SHOULD be normalized as defined by the Unicode normalization form <em>NFC</em>,
-							defined in [<cite><a class="normative" href="#references-UnicodeNormalization">UAX #15</a></cite>].
-							This attribute MAY contain the <a class="def" href="#glossary-empty-string">empty string</a>.
-							</p>
-
-						<p>The <a class="def" href="#glossary-un-initialized-value">un-initialized value</a> of this attribute
-							MUST be <code>""</code> (the empty string).
-							</p>
-					</dd>
-
-					<dt>readonly attribute boolean isComposing</dt>
-					<dd>
-						<p><code>true</code> if the input event occurs as part of a composition session, i.e., after a
-							<a class="eventtype" href="#event-type-compositionstart"><code>compositionstart</code></a>
-							event and before the corresponding
-							<a class="eventtype" href="#event-type-compositionend"><code>compositionend</code></a>
-							event.
-							</p>
-
-						<p>The <a class="def" href="#glossary-un-initialized-value">un-initialized value</a> of this
-							attribute MUST be <code>false</code>.
-							</p>
-					</dd>
-
-				</dl>
-				
-				<dl class="idl" title="dictionary InputEventInit : UIEventInit">
-					<dt>DOMString data = ""</dt>
-					<dd>
-						<p>Initializes the <code>data</code> attribute of the InputEvent object.
-							</p>
-					</dd>
-
-					<dt>boolean isComposing = false</dt>
-					<dd>
-						<p>Initializes the <code>isComposing</code> attribute of the InputEvent object.
-							</p>
-					</dd>
-				</dl>
-
-			</section>  <!-- interface-InputEvent -->
-
-			<section id="events-inputevent-event-order">
-				<h4>Input Event Order</h4>
-
-				<p>The input events defined in this specification MUST occur in a set order relative to one another.
-					</p>
-
-				<table class="event-sequence-table">
-					<tr>
-						<td class="cell-number">1.</td>
-						<td><a class="eventtype" href="#event-type-beforeinput"><code>beforeinput</code></a></td>
-						<td></td>
-					</tr>
-					<tr>
-						<td class="cell-number"></td>
-						<td colspan="2"><em>DOM element is updated</em></td>
-					</tr>
-					<tr>
-						<td class="cell-number">2.</td>
-						<td><a class="eventtype" href="#event-type-input"><code>input</code></a></td>
-						<td></td>
-					</tr>
-				</table>
-
-			</section>  <!-- events-inputevent-event-order -->
-			
-			<p>The Input event types are listed below.</p>
-
-			<!-- beforeinput -->
-			<div class="event-definition">
-				<dl>
-					<dt id="event-type-beforeinput"><dfn><a class="eventtype" href="#event-type-beforeinput"><code>beforeinput</code></a></dfn></dt>
-					<dd>
-						<table border="0" summary="This table contains information about the semantics of the given event type" cellpadding="2" cellspacing="0">
-							<tr>
-								<th>Type</th>
-								<td><strong><code>beforeinput</code></strong></td>
-							</tr>
-							<tr>
-								<th>Interface</th>
-								<td><a href="#interface-InputEvent"><code>InputEvent</code></a></td>
-							</tr>
-							<tr>
-								<th>Sync / Async</th>
-								<td>Sync</td>
-							</tr>
-							<tr>
-								<th>Bubbles</th>
-								<td>Yes</td>
-							</tr>
-							<tr>
-								<th>Trusted Targets</th>
-								<td><code>Element</code> (specifically: control types such as <code>HTMLInputElement</code>, etc.) or any <code>Element</code> with 
-									<code>contenteditable</code> attribute enabled.</td>
-							</tr>
-							<tr>
-								<th>Cancelable</th>
-								<td>Yes</td>
-							</tr>
-							<tr>
-								<th>Default action</th>
-								<td>Update the DOM element</td>
-							</tr>
-							<tr>
-								<th>Context<br/>(trusted events)</th>
-								<td>
-									<ul>
-										<li><a href="#widl-Event-target"><code class="attribute-name">Event.target</code></a>:
-											<a class="def" href="#glossary-event-target">event target</a> that is about to be updated</li>
-										<li><a href="#widl-UIEvent-view"><code class="attribute-name">UIEvent.view</code></a>:
-											<a class="def" href="#glossary-window"><code>Window</code></a></li>
-										<li><a href="#widl-UIEvent-detail"><code class="attribute-name">UIEvent.detail</code></a>:
-											<code>0</code></li>
-										<li><a href="#widl-InputEvent-data"><code class="attribute-name">InputEvent.data</code></a>:
-											the string containing the data that will be added to the element,
-											which MAY be the <a class="def" href="#glossary-empty-string">empty string</a> if the content has been deleted</li>
-										<li><a href="#widl-InputEvent-isComposing"><code class="attribute-name">InputEvent.isComposing</code></a>:
-											<code>true</code> if this event is dispatched during a <a href="#keys-dead">dead key</a> sequence or while an 
-											<a href="#glossary-ime">input method editor</a> is active (such that 
-											<a href="#events-compositionevents">composition events</a> are being dispatched); <code>false</code> otherwise.</li>
-									</ul>
-								</td>
-							</tr>
-						</table>
-
-						<p>A <a class="def" href="#glossary-user-agent">user agent</a> MUST dispatch this event when the DOM is about to be updated.</p>
-					</dd>
-				</dl>
-			</div><!-- beforeinput -->
-
-			<!-- input -->
-			<div class="event-definition">
-				<dl>
-					<dt id="event-type-input"><dfn><a class="eventtype" href="#event-type-input"><code>input</code></a></dfn></dt>
-					<dd>
-						<table border="0" summary="This table contains information about the semantics of the given event type" cellpadding="2" cellspacing="0">
-							<tr>
-								<th>Type</th>
-								<td><strong><code>input</code></strong></td>
-							</tr>
-							<tr>
-								<th>Interface</th>
-								<td><a href="#interface-InputEvent"><code>InputEvent</code></a></td>
-							</tr>
-							<tr>
-								<th>Sync / Async</th>
-								<td>Sync</td>
-							</tr>
-							<tr>
-								<th>Bubbles</th>
-								<td>Yes</td>
-							</tr>
-							<tr>
-								<th>Trusted Targets</th>
-								<td><code>Element</code> (specifically: control types such as <code>HTMLInputElement</code>, etc.) or any <code>Element</code> with 
-									<code>contenteditable</code> attribute enabled.</td>
-							</tr>
-							<tr>
-								<th>Cancelable</th>
-								<td>No</td>
-							</tr>
-							<tr>
-								<th>Default action</th>
-								<td>None</td>
-							</tr>
-							<tr>
-								<th>Context<br/>(trusted events)</th>
-								<td>
-									<ul>
-										<li><a href="#widl-Event-target"><code class="attribute-name">Event.target</code></a>:
-											<a class="def" href="#glossary-event-target">event target</a> that was just updated</li>
-										<li><a href="#widl-UIEvent-view"><code class="attribute-name">UIEvent.view</code></a>:
-											<a class="def" href="#glossary-window"><code>Window</code></a></li>
-										<li><a href="#widl-UIEvent-detail"><code class="attribute-name">UIEvent.detail</code></a>:
-											<code>0</code></li>
-										<li><a href="#widl-InputEvent-data"><code class="attribute-name">InputEvent.data</code></a>:
-											the string containing the data that was added to the element,
-											which MAY be the <a class="def" href="#glossary-empty-string">empty string</a> if the content has been deleted</li>
-										<li><a href="#widl-InputEvent-isComposing"><code class="attribute-name">InputEvent.isComposing</code></a>:
-											<code>true</code> if this event is dispatched during a <a href="#keys-dead">dead key</a> sequence or while an 
-											<a href="#glossary-ime">input method editor</a> is active (such that 
-											<a href="#events-compositionevents">composition events</a> are being dispatched); <code>false</code> otherwise.</li>
-									</ul>
-								</td>
-							</tr>
-						</table>
-
-						<p>A <a class="def" href="#glossary-user-agent">user agent</a> MUST dispatch this event immediately after the DOM has been updated.</p>
-					</dd>
-				</dl>
-			</div><!-- input -->
-
-		</section>  <!-- events-inputevents -->
-
 		<section id="events-keyboardevents">
 			<h3>Keyboard Event Types</h3>
 
@@ -5426,90 +5216,6 @@
 
 			</section>  <!-- events-composition-event-key-events -->
 			
-			<section id="events-composition-event-input-events">
-				<h4>Input Events During Composition</h4>
-				
-				<p>During the composition session, the 
-					<a class="eventtype" href="#event-type-compositionupdate"><code>compositionupdate</code></a> MUST be dispatched
-					before the <a class="eventtype" href="#event-type-beforeinput"><code>beforeinput</code></a> and <code>input</code> events are sent.
-					</p>
-
-				<table class="event-sequence-table">
-					<tr>
-						<td class="cell-number"></td>
-						<th>Event Name</th>
-						<th>Notes</th>
-					</tr>
-					<tr>
-						<td class="cell-number">1.</td>
-						<td><a class="eventtype" href="#event-type-compositionupdate"><code>compositionupdate</code></a></td>
-						<td></td>
-					</tr>
-					<tr>
-						<td class="cell-number">2.</td>
-						<td><a class="eventtype" href="#event-type-beforeinput"><code>beforeinput</code></a></td>
-						<td></td>
-					</tr>
-					<tr>
-						<td class="cell-number"></td>
-						<td></td>
-						<td><em>Any DOM updates occur at this point.</em></td>
-					</tr>
-					<tr>
-						<td class="cell-number">3.</td>
-						<td><a class="eventtype" href="#event-type-input"><code>input</code></a></td>
-						<td></td>
-					</tr>
-				</table>
-
-				<p class="note"><strong>Note:</strong> Most IMEs do not support canceling updates
-					during a composition session.
-					</p>
-
-				<p>When a composition session is finished, any 
-					<a class="eventtype" href="#event-type-beforeinput"><code>beforeinput</code></a> and 
-					<a class="eventtype" href="#event-type-input"><code>input</code></a> events MUST be dispatched after the 
-					<a class="eventtype" href="#event-type-compositionend"><code>compositionend</code></a> event.
-					</p>
-
-				<table class="event-sequence-table">
-					<tr>
-						<td class="cell-number"></td>
-						<th>Event Name</th>
-						<th>Notes</th>
-					</tr>
-					<tr>
-						<td class="cell-number">1.</td>
-						<td><a class="eventtype" href="#event-type-compositionend"><code>compositionend</code></a></td>
-						<td></td>
-					</tr>
-					<tr>
-						<td class="cell-number">2.</td>
-						<td><a class="eventtype" href="#event-type-beforeinput"><code>beforeinput</code></a></td>
-						<td><em>Sent only if we’re about to update the DOM (i.e., the composition was not canceled).
-							Canceling this will prevent the DOM update and the 
-							<a class="eventtype" href="#event-type-input"><code>input</code></a> event.</em></td>
-					</tr>
-					<tr>
-						<td class="cell-number"></td>
-						<td></td>
-						<td><em>Any DOM updates occur at this point.</em></td>
-					</tr>
-					<tr>
-						<td class="cell-number">3.</td>
-						<td><a class="eventtype" href="#event-type-input"><code>input</code></a></td>
-						<td><em>Sent only if the DOM was updated.</em></td>
-					</tr>
-				</table>
-				
-				<p class="note"><strong>Note:</strong> Some IMEs update the DOM before the
-					<a class="eventtype" href="#event-type-compositionend"><code>compositionend</code></a> event is dispatched.
-					In this case, canceling the <a class="eventtype" href="#event-type-beforeinput"><code>beforeinput</code></a>
-					event will have no effect (i.e., the <a class="eventtype" href="#event-type-input"><code>input</code></a>
-					event will still fire).</p>
-
-			</section>  <!-- events-composition-event-input-events -->
-			
 			<section id="events-composition-event-types">
 				<h4>Composition Event Types</h4>
 				<p>The composition event types are listed below.</p>