html5/spec Overview.html,1.1400,1.1401

Update of /sources/public/html5/spec
In directory hutz:/tmp/cvs-serv30941

Modified Files:
	Overview.html 
Log Message:
WF2: <input type=url>. Define constraints for how/when autocomplete='' happens. Say that input controls not in a document aren't mutable. (whatwg r2228)

Index: Overview.html
===================================================================
RCS file: /sources/public/html5/spec/Overview.html,v
retrieving revision 1.1400
retrieving revision 1.1401
diff -u -d -r1.1400 -r1.1401
--- Overview.html	24 Sep 2008 02:10:08 -0000	1.1400
+++ Overview.html	24 Sep 2008 07:17:50 -0000	1.1401
@@ -29568,6 +29568,13 @@
    href="#disabled4" title=concept-fe-disabled>disabled</a>, it is <i
    title=concept-input-immutable><a href="#immutable">immutable</a></i>.
 
+  <p>When an <code><a href="#input0">input</a></code> element does not have a
+   <code>Document</code> node as one of its ancestors (i.e. when it is not in
+   the document), it is <i title=concept-input-immutable><a
+   href="#immutable">immutable</a></i>.</p>
+  <!-- XXX how does
+  this affect shadow trees in XBL2? -->
+
   <p class=note>The <code title=attr-input-readonly><a
    href="#readonly0">readonly</a></code> attribute can also make an <code><a
    href="#input0">input</a></code> element <i
@@ -29685,8 +29692,7 @@
 
   <p><strong>The <a href="#text3" title=attr-input-type-text>Text</a> state's
    <a href="#control0">control initialization algorithm</a> is as
-   follows:</strong> <a href="#strip">Strip line breaks from the value</a>.</p>
-  <!-- XXX autocomplete? -->
+   follows:</strong> <a href="#strip">Strip line breaks from the value</a>.
 
   <p><strong>The <a href="#text3" title=attr-input-type-text>Text</a> state's
    <a href="#default2">default value change algorithm</a> is as
@@ -29879,8 +29885,7 @@
 
   <p><strong>The <a href="#e-mail0" title=attr-input-type-email>E-mail</a>
    state's <a href="#control0">control initialization algorithm</a> is as
-   follows:</strong> <a href="#strip">Strip line breaks from the value</a>.</p>
-  <!-- XXX autocomplete? -->
+   follows:</strong> <a href="#strip">Strip line breaks from the value</a>.
 
   <p><strong>The <a href="#e-mail0" title=attr-input-type-email>E-mail</a>
    state's <a href="#default2">default value change algorithm</a> is as
@@ -29963,7 +29968,97 @@
    href="#url1">url</a></code>, it is in the <a href="#url2"
    title=attr-input-type-url>URL</a> state.
 
-  <p class=big-issue>...
+  <p>When an <code><a href="#input0">input</a></code> element's <code
+   title=attr-input-type><a href="#type14">type</a></code> attribute is in
+   the <a href="#url2" title=attr-input-type-url>URL</a> state, the element
+   represents a control for editing a single <a href="#url">URL</a> given in
+   the element's <a href="#value12" title=concept-fe-value>value</a>.
+
+  <p>If an <code><a href="#input0">input</a></code> element whose <code
+   title=attr-input-type><a href="#type14">type</a></code> attribute is in
+   the <a href="#url2" title=attr-input-type-url>URL</a> state is <i
+   title=concept-input-mutable><a href="#mutable">mutable</a></i>, the user
+   should allow the user to change the URL represented by its <a
+   href="#value12" title=concept-fe-value>value</a>. User agents may allow
+   the user to set the <a href="#value12" title=concept-fe-value>value</a> to
+   a string that is not a URL. User agents should allow the user to set the
+   <a href="#value12" title=concept-fe-value>value</a> to the empty string.
+   User agents must not allow users to insert U+000A LINE FEED (LF) or U+000D
+   CARRIAGE RETURN (CR) characters into the <a href="#value12"
+   title=concept-fe-value>value</a> of such <code><a
+   href="#input0">input</a></code> elements.
+
+  <p><strong>The <a href="#url2" title=attr-input-type-url>URL</a> state's <a
+   href="#control0">control initialization algorithm</a> is as
+   follows:</strong> <a href="#strip">Strip line breaks from the value</a>.
+
+  <p><strong>The <a href="#url2" title=attr-input-type-url>URL</a> state's <a
+   href="#default2">default value change algorithm</a> is as
+   follows:</strong> If the <code><a href="#input0">input</a></code> element
+   is not <i title=concept-input-dirty><a href="#dirty0">dirty</a></i> then
+   set the <a href="#value12" title=concept-fe-value>value</a> of the element
+   to the value of the <code title=attr-input-value><a
+   href="#value8">value</a></code> content attribute and <a
+   href="#strip">strip line breaks from the value</a>.
+
+  <p><strong>The <a href="#url2" title=attr-input-type-url>URL</a> state's <a
+   href="#value10"><code title=dom-input-value>value</code> setter
+   algorithm</a> is as follows:</strong> Set the <a href="#value12"
+   title=concept-fe-value>value</a> of the element to the new value and <a
+   href="#strip">strip line breaks from the value</a>.
+
+  <p><strong>Constraint validation:</strong> While the <a href="#value12"
+   title=concept-fe-value>value</a> of the element is not a <a
+   href="#valid8">valid URL</a>, the element is <a
+   href="#suffering">suffering from a type mismatch</a>.
+
+  <p>When an <code><a href="#input0">input</a></code> element's <code
+   title=attr-input-type><a href="#type14">type</a></code> attribute is in
+   the <a href="#url2" title=attr-input-type-url>URL</a> state, the following
+   common <code><a href="#input0">input</a></code> element content
+   attributes, DOM attributes, and methods apply to the element: <code
+   title=attr-input-autocomplete><a
+   href="#autocomplete0">autocomplete</a></code>, <code
+   title=attr-input-list>list</code>, <code
+   title=attr-input-maxlength>maxlength</code>, <code
+   title=attr-input-pattern>pattern</code>, <code
+   title=attr-input-readonly><a href="#readonly0">readonly</a></code>, <code
+   title=attr-input-required>required</code>, and <code
+   title=attr-input-size>size</code> content attributes; <code
+   title=dom-input-list><a href="#list">list</a></code>, and <code
+   title=dom-input-selectedOption><a
+   href="#selectedoption">selectedOption</a></code> DOM attributes.
+
+  <p>When an <code><a href="#input0">input</a></code> element's <code
+   title=attr-input-type><a href="#type14">type</a></code> attribute is in
+   the <a href="#url2" title=attr-input-type-url>URL</a> state, the following
+   content attributes must not be specified and do not apply to the element:
+   <code class=no-backref title=attr-input-accept><a
+   href="#accept0">accept</a></code>, <code class=no-backref
+   title=attr-input-alt>alt</code>, <code class=no-backref
+   title=attr-input-checked>checked</code>, <code class=no-backref
+   title=attr-input-max>max</code>, <code class=no-backref
+   title=attr-input-min>min</code>, <code class=no-backref
+   title=attr-input-src>src</code>, <code class=no-backref
+   title=attr-input-step>step</code>, <code class=no-backref
+   title=attr-fs-target><a href="#target3">target</a></code>, <code
+   class=no-backref title=attr-fs-method><a href="#method">method</a></code>,
+   <code class=no-backref title=attr-fs-enctype><a
+   href="#enctype">enctype</a></code>, and <code class=no-backref
+   title=attr-fs-action><a href="#action">action</a></code>.
+
+  <p>When an <code><a href="#input0">input</a></code> element's <code
+   title=attr-input-type><a href="#type14">type</a></code> attribute is in
+   the <a href="#url2" title=attr-input-type-url>URL</a> state, the following
+   DOM attributes and methods do not apply to the element: <code
+   class=no-backref title=dom-input-checked><a
+   href="#checked1">checked</a></code>, <code class=no-backref
+   title=dom-input-valueAsDate><a href="#valueasdate">valueAsDate</a></code>,
+   <code class=no-backref title=dom-input-valueAsNumber><a
+   href="#valueasnumber">valueAsNumber</a></code>, <code class=no-backref
+   title=dom-input-stepUp><a href="#stepup">stepUp()</a></code>, and <code
+   class=no-backref title=dom-input-stepDown><a
+   href="#stepdown">stepDown()</a></code>.
 
   <h6 id=date-and><span class=secno>4.10.4.1.5. </span><dfn id=date-and0
    title=attr-input-type-datetime>Date and Time</dfn> state</h6>
@@ -30264,9 +30359,13 @@
    user agent should not remember the control's value.</p>
   <!-- XXX xref value? -->
 
-  <p>This specification does not define the autocompletion mechanism. User
-   agents may implement any system within the conformance criteria of this
-   specification, taking into account security and privacy concerns.
+  <p>The autocompletion mechanism must be implemented by the user agent
+   acting as if the user had modified the element's <span
+   title=concept-input-value>value</span>, and must be done at a time where
+   the element is <i title=concept-input-mutable><a
+   href="#mutable">mutable</a></i> (e.g. just after the element has been
+   inserted into the document, or when the user agent <span>stops
+   parsing</span>).
 
   <div class=example>
    <p>Banks frequently do not want UAs to prefill login information:</p>

Received on Wednesday, 24 September 2008 07:18:27 UTC