Make <input type=color> a runtime enabled (on-by-default) feature
authorakeerthi@apple.com <akeerthi@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 8 Oct 2018 22:08:41 +0000 (22:08 +0000)
committerakeerthi@apple.com <akeerthi@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 8 Oct 2018 22:08:41 +0000 (22:08 +0000)
https://bugs.webkit.org/show_bug.cgi?id=189162

Reviewed by Wenson Hsieh and Tim Horton.

Source/JavaScriptCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Enable the build-time flag INPUT_TYPE_COLOR by default and introduce a runtime-enabled feature for input type
color, also on by default.

Covered by rebaselining existing layout tests.

* Configurations/FeatureDefines.xcconfig:
* html/InputType.cpp:
(WebCore::createInputTypeFactoryMap):
* page/RuntimeEnabledFeatures.h:
(WebCore::RuntimeEnabledFeatures::inputTypeColorEnabled const):
(WebCore::RuntimeEnabledFeatures::setInputTypeColorEnabled):

Source/WebCore/PAL:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit:

* Configurations/FeatureDefines.xcconfig:
* Shared/WebPreferences.yaml:

Add an experimental feature flag for input type=color.

* UIProcess/mac/WebColorPickerMac.mm:
(-[WKPopoverColorWell webDelegate]):
(-[WKPopoverColorWell setWebDelegate:]):

Source/WebKitLegacy/mac:

* Configurations/FeatureDefines.xcconfig:

Source/WTF:

* wtf/FeatureDefines.h:

Tools:

* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:

LayoutTests:

Rebaseline layout tests after enabling input type=color by default.

* platform/ios-simulator-wk2/imported/w3c/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application-expected.txt:
* platform/ios-wk2/imported/w3c/web-platform-tests/html/dom/reflection-forms-expected.txt:
* platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate-expected.txt:
* platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application-expected.txt:
* platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/type-change-state-expected.txt:
* platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/valueMode-expected.txt:
* platform/ios/fast/forms/color/input-appearance-color-expected.txt:
* platform/ios/imported/w3c/web-platform-tests/html/semantics/forms/the-form-element/form-elements-filter-expected.txt: Added.
* platform/ios/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/color-expected.txt:
* platform/mac/accessibility/roles-exposed-expected.txt:
* platform/mac/fast/selectors/read-only-read-write-input-basics-expected.txt:
* platform/mac/imported/w3c/web-platform-tests/html/dom/reflection-forms-expected.txt:
* platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-badInput-expected.txt:
* platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate-expected.txt:
* platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application-expected.txt:
* platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/selection-expected.txt:
* platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/type-change-state-expected.txt:
* platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/valueMode-expected.txt:
* platform/mac/imported/w3c/web-platform-tests/html/semantics/selectors/pseudo-classes/readwrite-readonly-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@236942 268f45cc-cd09-0410-ab3c-d52691b4dbfc

38 files changed:
LayoutTests/ChangeLog
LayoutTests/platform/ios-simulator-wk2/imported/w3c/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application-expected.txt
LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/html/dom/reflection-forms-expected.txt
LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate-expected.txt
LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application-expected.txt
LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/type-change-state-expected.txt
LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/valueMode-expected.txt
LayoutTests/platform/ios/fast/forms/color/input-appearance-color-expected.txt
LayoutTests/platform/ios/imported/w3c/web-platform-tests/html/semantics/forms/the-form-element/form-elements-filter-expected.txt [new file with mode: 0644]
LayoutTests/platform/ios/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/color-expected.txt
LayoutTests/platform/mac/accessibility/roles-exposed-expected.txt
LayoutTests/platform/mac/fast/selectors/read-only-read-write-input-basics-expected.txt
LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/dom/reflection-forms-expected.txt
LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-badInput-expected.txt
LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate-expected.txt
LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application-expected.txt
LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/selection-expected.txt
LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/type-change-state-expected.txt
LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/valueMode-expected.txt
LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/selectors/pseudo-classes/readwrite-readonly-expected.txt
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/Configurations/FeatureDefines.xcconfig
Source/WTF/ChangeLog
Source/WTF/wtf/FeatureDefines.h
Source/WebCore/ChangeLog
Source/WebCore/Configurations/FeatureDefines.xcconfig
Source/WebCore/PAL/ChangeLog
Source/WebCore/PAL/Configurations/FeatureDefines.xcconfig
Source/WebCore/html/InputType.cpp
Source/WebCore/page/RuntimeEnabledFeatures.h
Source/WebKit/ChangeLog
Source/WebKit/Configurations/FeatureDefines.xcconfig
Source/WebKit/Shared/WebPreferences.yaml
Source/WebKit/UIProcess/mac/WebColorPickerMac.mm
Source/WebKitLegacy/mac/ChangeLog
Source/WebKitLegacy/mac/Configurations/FeatureDefines.xcconfig
Tools/ChangeLog
Tools/TestWebKitAPI/Configurations/FeatureDefines.xcconfig

index eefb480..2535fdd 100644 (file)
@@ -1,3 +1,32 @@
+2018-10-08  Aditya Keerthi  <akeerthi@apple.com>
+
+        Make <input type=color> a runtime enabled (on-by-default) feature
+        https://bugs.webkit.org/show_bug.cgi?id=189162
+
+        Reviewed by Wenson Hsieh and Tim Horton.
+
+        Rebaseline layout tests after enabling input type=color by default.
+
+        * platform/ios-simulator-wk2/imported/w3c/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application-expected.txt:
+        * platform/ios-wk2/imported/w3c/web-platform-tests/html/dom/reflection-forms-expected.txt:
+        * platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate-expected.txt:
+        * platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application-expected.txt:
+        * platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/type-change-state-expected.txt:
+        * platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/valueMode-expected.txt:
+        * platform/ios/fast/forms/color/input-appearance-color-expected.txt:
+        * platform/ios/imported/w3c/web-platform-tests/html/semantics/forms/the-form-element/form-elements-filter-expected.txt: Added.
+        * platform/ios/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/color-expected.txt:
+        * platform/mac/accessibility/roles-exposed-expected.txt:
+        * platform/mac/fast/selectors/read-only-read-write-input-basics-expected.txt:
+        * platform/mac/imported/w3c/web-platform-tests/html/dom/reflection-forms-expected.txt:
+        * platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-badInput-expected.txt:
+        * platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate-expected.txt:
+        * platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application-expected.txt:
+        * platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/selection-expected.txt:
+        * platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/type-change-state-expected.txt:
+        * platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/valueMode-expected.txt:
+        * platform/mac/imported/w3c/web-platform-tests/html/semantics/selectors/pseudo-classes/readwrite-readonly-expected.txt:
+
 2018-10-08  Ryan Haddad  <ryanhaddad@apple.com>
 
         Move test expectations from ios-12 to ios directory
index 409d649..40de2b4 100644 (file)
@@ -143,24 +143,22 @@ PASS setRangeText on an input[type=range] throws InvalidStateError
 FAIL setSelectionRange on an input[type=range] throws InvalidStateError assert_throws: function "function (){
         el.setSelectionRange(0, 1);
       }" threw object "TypeError: Type error" that is not a DOMException InvalidStateError: property "code" is equal to undefined, expected 11
-FAIL selectionStart on an input[type=color] returns null assert_equals: expected (object) null but got (number) 0
-FAIL selectionEnd on an input[type=color] returns null assert_equals: expected (object) null but got (number) 0
-FAIL selectionDirection on an input[type=color] returns null assert_equals: expected (object) null but got (string) "none"
+FAIL selectionStart on an input[type=color] returns null Type error
+FAIL selectionEnd on an input[type=color] returns null Type error
+FAIL selectionDirection on an input[type=color] returns null Type error
 FAIL assigning selectionStart on an input[type=color] throws InvalidStateError assert_throws: function "function (){
         el.selectionStart = 0;
-      }" did not throw
+      }" threw object "TypeError: Type error" that is not a DOMException InvalidStateError: property "code" is equal to undefined, expected 11
 FAIL assigning selectionEnd on an input[type=color] throws InvalidStateError assert_throws: function "function (){
         el.selectionEnd = 0;
-      }" did not throw
+      }" threw object "TypeError: Type error" that is not a DOMException InvalidStateError: property "code" is equal to undefined, expected 11
 FAIL assigning selectionDirection on an input[type=color] throws InvalidStateError assert_throws: function "function (){
         el.selectionDirection = 'none';
-      }" did not throw
-FAIL setRangeText on an input[type=color] throws InvalidStateError assert_throws: function "function (){
-        el.setRangeText("foobar");
-      }" did not throw
+      }" threw object "TypeError: Type error" that is not a DOMException InvalidStateError: property "code" is equal to undefined, expected 11
+PASS setRangeText on an input[type=color] throws InvalidStateError 
 FAIL setSelectionRange on an input[type=color] throws InvalidStateError assert_throws: function "function (){
         el.setSelectionRange(0, 1);
-      }" did not throw
+      }" threw object "TypeError: Type error" that is not a DOMException InvalidStateError: property "code" is equal to undefined, expected 11
 FAIL selectionStart on an input[type=checkbox] returns null Type error
 FAIL selectionEnd on an input[type=checkbox] returns null Type error
 FAIL selectionDirection on an input[type=checkbox] returns null Type error
index 4ea4d06..a1c5964 100644 (file)
@@ -2806,11 +2806,11 @@ PASS input.type: setAttribute() to "xrange"
 PASS input.type: setAttribute() to "range\0" 
 PASS input.type: setAttribute() to "ange" 
 PASS input.type: setAttribute() to "RANGE" 
-FAIL input.type: setAttribute() to "color" assert_equals: IDL get expected "color" but got "text"
+PASS input.type: setAttribute() to "color" 
 PASS input.type: setAttribute() to "xcolor" 
 PASS input.type: setAttribute() to "color\0" 
 PASS input.type: setAttribute() to "olor" 
-FAIL input.type: setAttribute() to "COLOR" assert_equals: IDL get expected "color" but got "text"
+PASS input.type: setAttribute() to "COLOR" 
 PASS input.type: setAttribute() to "checkbox" 
 PASS input.type: setAttribute() to "xcheckbox" 
 PASS input.type: setAttribute() to "checkbox\0" 
@@ -2933,11 +2933,11 @@ PASS input.type: IDL set to "xrange"
 PASS input.type: IDL set to "range\0" 
 PASS input.type: IDL set to "ange" 
 PASS input.type: IDL set to "RANGE" 
-FAIL input.type: IDL set to "color" assert_equals: IDL get expected "color" but got "text"
+PASS input.type: IDL set to "color" 
 PASS input.type: IDL set to "xcolor" 
 PASS input.type: IDL set to "color\0" 
 PASS input.type: IDL set to "olor" 
-FAIL input.type: IDL set to "COLOR" assert_equals: IDL get expected "color" but got "text"
+PASS input.type: IDL set to "COLOR" 
 PASS input.type: IDL set to "checkbox" 
 PASS input.type: IDL set to "xcheckbox" 
 PASS input.type: IDL set to "checkbox\0" 
index 40671b0..8a5ab67 100644 (file)
@@ -51,7 +51,10 @@ PASS [INPUT in TIME status] Must be barred from the constraint validation if it
 PASS [INPUT in TIME status] The willValidate attribute must be true if an element is mutable 
 PASS [INPUT in TIME status] Must be barred from the constraint validation if it is readonly 
 PASS [INPUT in TIME status] The willValidate attribute must be false if it has a datalist ancestor 
-FAIL [INPUT in COLOR status] The color type must be supported. assert_equals: The color type should be supported. expected "color" but got "text"
+PASS [INPUT in COLOR status] Must be barred from the constraint validation if it is disabled 
+PASS [INPUT in COLOR status] The willValidate attribute must be true if an element is mutable 
+PASS [INPUT in COLOR status] Must be barred from the constraint validation if it is readonly 
+PASS [INPUT in COLOR status] The willValidate attribute must be false if it has a datalist ancestor 
 PASS [INPUT in FILE status] Must be barred from the constraint validation if it is disabled 
 PASS [INPUT in FILE status] The willValidate attribute must be true if an element is mutable 
 PASS [INPUT in FILE status] Must be barred from the constraint validation if it is readonly 
index 409d649..40de2b4 100644 (file)
@@ -143,24 +143,22 @@ PASS setRangeText on an input[type=range] throws InvalidStateError
 FAIL setSelectionRange on an input[type=range] throws InvalidStateError assert_throws: function "function (){
         el.setSelectionRange(0, 1);
       }" threw object "TypeError: Type error" that is not a DOMException InvalidStateError: property "code" is equal to undefined, expected 11
-FAIL selectionStart on an input[type=color] returns null assert_equals: expected (object) null but got (number) 0
-FAIL selectionEnd on an input[type=color] returns null assert_equals: expected (object) null but got (number) 0
-FAIL selectionDirection on an input[type=color] returns null assert_equals: expected (object) null but got (string) "none"
+FAIL selectionStart on an input[type=color] returns null Type error
+FAIL selectionEnd on an input[type=color] returns null Type error
+FAIL selectionDirection on an input[type=color] returns null Type error
 FAIL assigning selectionStart on an input[type=color] throws InvalidStateError assert_throws: function "function (){
         el.selectionStart = 0;
-      }" did not throw
+      }" threw object "TypeError: Type error" that is not a DOMException InvalidStateError: property "code" is equal to undefined, expected 11
 FAIL assigning selectionEnd on an input[type=color] throws InvalidStateError assert_throws: function "function (){
         el.selectionEnd = 0;
-      }" did not throw
+      }" threw object "TypeError: Type error" that is not a DOMException InvalidStateError: property "code" is equal to undefined, expected 11
 FAIL assigning selectionDirection on an input[type=color] throws InvalidStateError assert_throws: function "function (){
         el.selectionDirection = 'none';
-      }" did not throw
-FAIL setRangeText on an input[type=color] throws InvalidStateError assert_throws: function "function (){
-        el.setRangeText("foobar");
-      }" did not throw
+      }" threw object "TypeError: Type error" that is not a DOMException InvalidStateError: property "code" is equal to undefined, expected 11
+PASS setRangeText on an input[type=color] throws InvalidStateError 
 FAIL setSelectionRange on an input[type=color] throws InvalidStateError assert_throws: function "function (){
         el.setSelectionRange(0, 1);
-      }" did not throw
+      }" threw object "TypeError: Type error" that is not a DOMException InvalidStateError: property "code" is equal to undefined, expected 11
 FAIL selectionStart on an input[type=checkbox] returns null Type error
 FAIL selectionEnd on an input[type=checkbox] returns null Type error
 FAIL selectionDirection on an input[type=checkbox] returns null Type error
index 5bba06b..6f55cfc 100644 (file)
@@ -33,7 +33,7 @@ FAIL change state from text to week Type error
 FAIL change state from text to time Type error
 FAIL change state from text to number assert_equals: selectionStart should be unchanged expected 2 but got 0
 FAIL change state from text to range Type error
-FAIL change state from text to color assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
+FAIL change state from text to color Type error
 FAIL change state from text to checkbox Type error
 FAIL change state from text to radio Type error
 PASS change state from text to file 
@@ -54,7 +54,7 @@ FAIL change state from search to week Type error
 FAIL change state from search to time Type error
 FAIL change state from search to number assert_equals: selectionStart should be unchanged expected 2 but got 0
 FAIL change state from search to range Type error
-FAIL change state from search to color assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
+FAIL change state from search to color Type error
 FAIL change state from search to checkbox Type error
 FAIL change state from search to radio Type error
 PASS change state from search to file 
@@ -75,7 +75,7 @@ FAIL change state from tel to week Type error
 FAIL change state from tel to time Type error
 FAIL change state from tel to number assert_equals: selectionStart should be unchanged expected 2 but got 0
 FAIL change state from tel to range Type error
-FAIL change state from tel to color assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
+FAIL change state from tel to color Type error
 FAIL change state from tel to checkbox Type error
 FAIL change state from tel to radio Type error
 PASS change state from tel to file 
@@ -96,7 +96,7 @@ FAIL change state from url to week Type error
 FAIL change state from url to time Type error
 FAIL change state from url to number assert_equals: selectionStart should be unchanged expected 2 but got 0
 FAIL change state from url to range Type error
-FAIL change state from url to color assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "foobar"
+FAIL change state from url to color Type error
 FAIL change state from url to checkbox Type error
 FAIL change state from url to radio Type error
 PASS change state from url to file 
@@ -117,7 +117,7 @@ FAIL change state from email to week Type error
 FAIL change state from email to time Type error
 FAIL change state from email to number assert_equals: selectionStart should be unchanged expected 2 but got 0
 FAIL change state from email to range Type error
-FAIL change state from email to color assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "foobar"
+FAIL change state from email to color Type error
 FAIL change state from email to checkbox Type error
 FAIL change state from email to radio Type error
 PASS change state from email to file 
@@ -138,7 +138,7 @@ FAIL change state from password to week Type error
 FAIL change state from password to time Type error
 FAIL change state from password to number assert_equals: selectionStart should be unchanged expected 2 but got 0
 FAIL change state from password to range Type error
-FAIL change state from password to color assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
+FAIL change state from password to color Type error
 FAIL change state from password to checkbox Type error
 FAIL change state from password to radio Type error
 PASS change state from password to file 
@@ -264,7 +264,7 @@ FAIL change state from number to month Type error
 FAIL change state from number to week Type error
 FAIL change state from number to time Type error
 FAIL change state from number to range Type error
-FAIL change state from number to color assert_equals: input.value should be '#000000' after change of state expected "#000000" but got ""
+FAIL change state from number to color Type error
 FAIL change state from number to checkbox assert_equals: input.value should be 'on' after change of state expected "on" but got ""
 FAIL change state from number to radio assert_equals: input.value should be 'on' after change of state expected "on" but got ""
 PASS change state from number to file 
@@ -293,27 +293,27 @@ FAIL change state from range to submit Type error
 FAIL change state from range to image Type error
 FAIL change state from range to reset Type error
 FAIL change state from range to button Type error
-FAIL change state from color to hidden assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
-FAIL change state from color to text assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
-FAIL change state from color to search assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
-FAIL change state from color to tel assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
-FAIL change state from color to url assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "foobar"
-FAIL change state from color to email assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "foobar"
-FAIL change state from color to password assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
+FAIL change state from color to hidden Type error
+FAIL change state from color to text Type error
+FAIL change state from color to search Type error
+FAIL change state from color to tel Type error
+FAIL change state from color to url Type error
+FAIL change state from color to email Type error
+FAIL change state from color to password Type error
 FAIL change state from color to datetime-local Type error
 FAIL change state from color to date Type error
 FAIL change state from color to month Type error
 FAIL change state from color to week Type error
 FAIL change state from color to time Type error
-FAIL change state from color to number assert_equals: selectionStart should be unchanged expected 2 but got 0
+FAIL change state from color to number Type error
 FAIL change state from color to range Type error
-FAIL change state from color to checkbox assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
-FAIL change state from color to radio assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
+FAIL change state from color to checkbox Type error
+FAIL change state from color to radio Type error
 PASS change state from color to file 
-FAIL change state from color to submit assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
-FAIL change state from color to image assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
-FAIL change state from color to reset assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
-FAIL change state from color to button assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
+FAIL change state from color to submit Type error
+FAIL change state from color to image Type error
+FAIL change state from color to reset Type error
+FAIL change state from color to button Type error
 FAIL change state from checkbox to hidden Type error
 FAIL change state from checkbox to text Type error
 FAIL change state from checkbox to search Type error
index a51a51d..c184493 100644 (file)
@@ -39,6 +39,6 @@ PASS value IDL attribute of input type number without value attribute
 PASS value IDL attribute of input type number with value attribute 
 PASS value IDL attribute of input type range without value attribute 
 PASS value IDL attribute of input type range with value attribute 
-FAIL value IDL attribute of input type color without value attribute assert_equals: expected "#000000" but got "foo"
-FAIL value IDL attribute of input type color with value attribute assert_equals: expected "#000000" but got "foo"
+PASS value IDL attribute of input type color without value attribute 
+PASS value IDL attribute of input type color with value attribute 
 
index 7bdec76..00a08b8 100644 (file)
@@ -6,144 +6,110 @@ layer at (0,0) size 800x600
       RenderBlock {H3} at (0,0) size 784x23
         RenderText {#text} at (0,0) size 164x22
           text run at (0,0) width 164: "Default Appearance"
-      RenderBlock (anonymous) at (0,41) size 784x46
+      RenderBlock (anonymous) at (0,41) size 784x44
         RenderText {#text} at (0,0) size 457x19
           text run at (0,0) width 457: "List color controls have different appearance if ENABLE(DATALIST)."
         RenderBR {BR} at (456,15) size 1x0
-        RenderTextControl {INPUT} at (2,22) size 136x22 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
-        RenderTextControl {INPUT} at (141,22) size 136x22 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
+        RenderBlock {INPUT} at (0,20) size 44x23 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
+          RenderFlexibleBox {DIV} at (6,3) size 32x16
+            RenderBlock {DIV} at (2,4) size 27x7 [bgcolor=#000000]
+        RenderBlock {INPUT} at (44,20) size 44x23 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
+          RenderFlexibleBox {DIV} at (6,3) size 32x16
+            RenderBlock {DIV} at (2,4) size 27x7 [bgcolor=#000000]
         RenderText {#text} at (0,0) size 0x0
-      RenderBlock {H3} at (0,105) size 784x24
+      RenderBlock {H3} at (0,103) size 784x24
         RenderText {#text} at (0,0) size 162x22
           text run at (0,0) width 162: "Different Font Sizes"
-      RenderBlock (anonymous) at (0,147) size 784x82
+      RenderBlock (anonymous) at (0,145) size 784x48
         RenderText {#text} at (0,0) size 590x19
           text run at (0,0) width 590: "List color controls have different sizes depending on font sizes. Normal color controls don't."
         RenderBR {BR} at (589,15) size 1x0
-        RenderTextControl {INPUT} at (2,22) size 221x33 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
-        RenderText {#text} at (224,28) size 5x19
-          text run at (224,28) width 5: " "
-        RenderTextControl {INPUT} at (230,29) size 136x22 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
-        RenderText {#text} at (367,28) size 5x19
-          text run at (367,28) width 5: " "
-        RenderTextControl {INPUT} at (371,32) size 100x17 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
-        RenderText {#text} at (470,28) size 5x19
-          text run at (470,28) width 5: " "
-        RenderTextControl {INPUT} at (476,22) size 221x33 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
-        RenderText {#text} at (698,28) size 5x19
-          text run at (698,28) width 5: " "
-        RenderTextControl {INPUT} at (2,58) size 136x22 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
-        RenderText {#text} at (139,57) size 5x19
-          text run at (139,57) width 5: " "
-        RenderTextControl {INPUT} at (143,61) size 100x17 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
+        RenderBlock {INPUT} at (0,24) size 44x23 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
+          RenderFlexibleBox {DIV} at (10,4) size 24x13
+            RenderBlock {DIV} at (2,4) size 20x4 [bgcolor=#00FF00]
+        RenderText {#text} at (44,20) size 4x19
+          text run at (44,20) width 4: " "
+        RenderBlock {INPUT} at (48,22) size 44x23 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
+          RenderFlexibleBox {DIV} at (6,3) size 32x16
+            RenderBlock {DIV} at (2,4) size 27x7 [bgcolor=#00FF00]
+        RenderText {#text} at (92,20) size 4x19
+          text run at (92,20) width 4: " "
+        RenderBlock {INPUT} at (96,21) size 44x23 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
+          RenderFlexibleBox {DIV} at (5,2) size 34x18
+            RenderBlock {DIV} at (2,4) size 30x9 [bgcolor=#00FF00]
+        RenderText {#text} at (140,20) size 4x19
+          text run at (140,20) width 4: " "
+        RenderBlock {INPUT} at (144,24) size 44x23 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
+          RenderFlexibleBox {DIV} at (10,4) size 24x13
+            RenderBlock {DIV} at (2,4) size 20x4 [bgcolor=#00FF00]
+        RenderText {#text} at (188,20) size 4x19
+          text run at (188,20) width 4: " "
+        RenderBlock {INPUT} at (192,22) size 44x23 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
+          RenderFlexibleBox {DIV} at (6,3) size 32x16
+            RenderBlock {DIV} at (2,4) size 27x7 [bgcolor=#00FF00]
+        RenderText {#text} at (236,20) size 4x19
+          text run at (236,20) width 4: " "
+        RenderBlock {INPUT} at (240,21) size 44x23 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
+          RenderFlexibleBox {DIV} at (5,2) size 34x18
+            RenderBlock {DIV} at (2,4) size 30x9 [bgcolor=#00FF00]
         RenderText {#text} at (0,0) size 0x0
-      RenderBlock {H3} at (0,246) size 784x24
+      RenderBlock {H3} at (0,210) size 784x24
         RenderText {#text} at (0,0) size 122x22
           text run at (0,0) width 122: "Various Colors"
-      RenderBlock (anonymous) at (0,288) size 784x51
-        RenderTextControl {INPUT} at (2,2) size 136x22 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
-        RenderText {#text} at (139,1) size 5x19
-          text run at (139,1) width 5: " "
-        RenderTextControl {INPUT} at (145,2) size 136x22 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
-        RenderText {#text} at (282,1) size 5x19
-          text run at (282,1) width 5: " "
-        RenderTextControl {INPUT} at (288,2) size 137x22 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
-        RenderText {#text} at (426,1) size 5x19
-          text run at (426,1) width 5: " "
-        RenderTextControl {INPUT} at (432,2) size 136x22 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
-        RenderText {#text} at (569,1) size 5x19
-          text run at (569,1) width 5: " "
-        RenderTextControl {INPUT} at (575,2) size 136x22 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
-        RenderText {#text} at (712,1) size 5x19
-          text run at (712,1) width 5: " "
-        RenderTextControl {INPUT} at (2,27) size 136x22 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
-        RenderText {#text} at (139,26) size 5x19
-          text run at (139,26) width 5: " "
-        RenderTextControl {INPUT} at (145,27) size 136x22 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
-        RenderText {#text} at (282,26) size 5x19
-          text run at (282,26) width 5: " "
-        RenderTextControl {INPUT} at (288,27) size 137x22 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
-        RenderText {#text} at (426,26) size 5x19
-          text run at (426,26) width 5: " "
-        RenderTextControl {INPUT} at (432,27) size 136x22 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
-        RenderText {#text} at (569,26) size 5x19
-          text run at (569,26) width 5: " "
-        RenderTextControl {INPUT} at (575,27) size 136x22 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
+      RenderBlock (anonymous) at (0,252) size 784x26
+        RenderBlock {INPUT} at (0,2) size 44x23 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
+          RenderFlexibleBox {DIV} at (6,3) size 32x16
+            RenderBlock {DIV} at (2,4) size 27x7 [bgcolor=#FF0000]
+        RenderText {#text} at (44,0) size 4x19
+          text run at (44,0) width 4: " "
+        RenderBlock {INPUT} at (48,2) size 44x23 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
+          RenderFlexibleBox {DIV} at (6,3) size 32x16
+            RenderBlock {DIV} at (2,4) size 27x7 [bgcolor=#00FF00]
+        RenderText {#text} at (92,0) size 4x19
+          text run at (92,0) width 4: " "
+        RenderBlock {INPUT} at (96,2) size 44x23 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
+          RenderFlexibleBox {DIV} at (6,3) size 32x16
+            RenderBlock {DIV} at (2,4) size 27x7 [bgcolor=#0000FF]
+        RenderText {#text} at (140,0) size 4x19
+          text run at (140,0) width 4: " "
+        RenderBlock {INPUT} at (144,2) size 44x23 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
+          RenderFlexibleBox {DIV} at (6,3) size 32x16
+            RenderBlock {DIV} at (2,4) size 27x7 [bgcolor=#EC008C]
+        RenderText {#text} at (188,0) size 4x19
+          text run at (188,0) width 4: " "
+        RenderBlock {INPUT} at (192,2) size 44x23 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
+          RenderFlexibleBox {DIV} at (6,3) size 32x16
+            RenderBlock {DIV} at (2,4) size 27x7 [bgcolor=#40E0D0]
+        RenderText {#text} at (236,0) size 4x19
+          text run at (236,0) width 4: " "
+        RenderBlock {INPUT} at (240,2) size 44x23 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
+          RenderFlexibleBox {DIV} at (6,3) size 32x16
+            RenderBlock {DIV} at (2,4) size 27x7 [bgcolor=#FF0000]
+        RenderText {#text} at (284,0) size 4x19
+          text run at (284,0) width 4: " "
+        RenderBlock {INPUT} at (288,2) size 44x23 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
+          RenderFlexibleBox {DIV} at (6,3) size 32x16
+            RenderBlock {DIV} at (2,4) size 27x7 [bgcolor=#00FF00]
+        RenderText {#text} at (332,0) size 4x19
+          text run at (332,0) width 4: " "
+        RenderBlock {INPUT} at (336,2) size 44x23 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
+          RenderFlexibleBox {DIV} at (6,3) size 32x16
+            RenderBlock {DIV} at (2,4) size 27x7 [bgcolor=#0000FF]
+        RenderText {#text} at (380,0) size 4x19
+          text run at (380,0) width 4: " "
+        RenderBlock {INPUT} at (384,2) size 44x23 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
+          RenderFlexibleBox {DIV} at (6,3) size 32x16
+            RenderBlock {DIV} at (2,4) size 27x7 [bgcolor=#EC008C]
+        RenderText {#text} at (428,0) size 4x19
+          text run at (428,0) width 4: " "
+        RenderBlock {INPUT} at (432,2) size 44x23 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
+          RenderFlexibleBox {DIV} at (6,3) size 32x16
+            RenderBlock {DIV} at (2,4) size 27x7 [bgcolor=#40E0D0]
         RenderText {#text} at (0,0) size 0x0
-      RenderBlock {H3} at (0,357) size 784x24
+      RenderBlock {H3} at (0,296) size 784x24
         RenderText {#text} at (0,0) size 118x22
           text run at (0,0) width 118: "Arbitrary Size"
-      RenderBlock (anonymous) at (0,399) size 784x31
-        RenderTextControl {INPUT} at (0,0) size 100x30 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
-layer at (17,75) size 122x14
-  RenderBlock {DIV} at (6,3) size 123x15
-layer at (156,75) size 122x14
-  RenderBlock {DIV} at (6,3) size 123x15
-layer at (20,182) size 200x22
-  RenderBlock {DIV} at (10,4) size 201x23
-    RenderText {#text} at (0,0) size 73x22
-      text run at (0,0) width 73: "#00FF00"
-layer at (245,187) size 122x14
-  RenderBlock {DIV} at (6,3) size 123x15
-    RenderText {#text} at (0,0) size 45x14
-      text run at (0,0) width 45: "#00FF00"
-layer at (385,190) size 89x11
-  RenderBlock {DIV} at (5,2) size 89x12
-    RenderText {#text} at (0,0) size 33x11
-      text run at (0,0) width 33: "#00FF00"
-layer at (495,182) size 200x22
-  RenderBlock {DIV} at (10,4) size 201x23
-    RenderText {#text} at (0,0) size 73x22
-      text run at (0,0) width 73: "#00FF00"
-layer at (17,216) size 122x14
-  RenderBlock {DIV} at (6,3) size 123x15
-    RenderText {#text} at (0,0) size 45x14
-      text run at (0,0) width 45: "#00FF00"
-layer at (156,219) size 89x11
-  RenderBlock {DIV} at (5,2) size 89x12
-    RenderText {#text} at (0,0) size 33x11
-      text run at (0,0) width 33: "#00FF00"
-layer at (17,302) size 122x14
-  RenderBlock {DIV} at (6,3) size 123x15
-    RenderText {#text} at (0,0) size 45x14
-      text run at (0,0) width 45: "#FF0000"
-layer at (160,302) size 122x14
-  RenderBlock {DIV} at (6,3) size 123x15
-    RenderText {#text} at (0,0) size 45x14
-      text run at (0,0) width 45: "#00FF00"
-layer at (303,302) size 122x14
-  RenderBlock {DIV} at (6,3) size 123x15
-    RenderText {#text} at (0,0) size 45x14
-      text run at (0,0) width 45: "#0000FF"
-layer at (447,302) size 122x14
-  RenderBlock {DIV} at (6,3) size 123x15
-    RenderText {#text} at (0,0) size 48x14
-      text run at (0,0) width 48: "#EC008C"
-layer at (590,302) size 122x14
-  RenderBlock {DIV} at (6,3) size 123x15
-    RenderText {#text} at (0,0) size 43x14
-      text run at (0,0) width 43: "#40e0d0"
-layer at (17,327) size 122x14
-  RenderBlock {DIV} at (6,3) size 123x15
-    RenderText {#text} at (0,0) size 45x14
-      text run at (0,0) width 45: "#FF0000"
-layer at (160,327) size 122x14
-  RenderBlock {DIV} at (6,3) size 123x15
-    RenderText {#text} at (0,0) size 45x14
-      text run at (0,0) width 45: "#00FF00"
-layer at (303,327) size 122x14
-  RenderBlock {DIV} at (6,3) size 123x15
-    RenderText {#text} at (0,0) size 45x14
-      text run at (0,0) width 45: "#0000FF"
-layer at (447,327) size 122x14
-  RenderBlock {DIV} at (6,3) size 123x15
-    RenderText {#text} at (0,0) size 48x14
-      text run at (0,0) width 48: "#EC008C"
-layer at (590,327) size 122x14
-  RenderBlock {DIV} at (6,3) size 123x15
-    RenderText {#text} at (0,0) size 43x14
-      text run at (0,0) width 43: "#40e0d0"
-layer at (15,414) size 87x14
-  RenderBlock {DIV} at (6,7) size 88x15
-    RenderText {#text} at (0,0) size 45x14
-      text run at (0,0) width 45: "#FF0000"
+      RenderBlock (anonymous) at (0,338) size 784x31
+        RenderBlock {INPUT} at (0,0) size 100x30 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
+          RenderFlexibleBox {DIV} at (6,3) size 88x23
+            RenderBlock {DIV} at (2,4) size 83x14 [bgcolor=#FF0000]
diff --git a/LayoutTests/platform/ios/imported/w3c/web-platform-tests/html/semantics/forms/the-form-element/form-elements-filter-expected.txt b/LayoutTests/platform/ios/imported/w3c/web-platform-tests/html/semantics/forms/the-form-element/form-elements-filter-expected.txt
new file mode 100644 (file)
index 0000000..47742fc
--- /dev/null
@@ -0,0 +1,7 @@
+
+PASS form.elements must contain all listed elements with the form owner 
+PASS form.elements only includes elements from the same shadow tree 
+                              
+                                                
+                                                              
+
index 4210cb8..134540d 100644 (file)
@@ -1,25 +1,25 @@
 
-FAIL Empty value should return #000000 assert_equals: expected "#000000" but got ""
-FAIL Missing value should return #000000 assert_equals: expected "#000000" but got "undefined"
+PASS Empty value should return #000000 
+PASS Missing value should return #000000 
 PASS Valid simple color: should return #ffffff 
-FAIL Valid simple color (containing LATIN CAPITAL LETTERS): should return #ffffff (converted to ASCII lowercase) assert_equals: expected "#ffffff" but got "#FFFFFF"
-FAIL Zero-padding assert_equals: expected "#0f0f0f" but got "#0F0F0F"
-FAIL Invalid simple color: not 7 characters long assert_equals: expected "#000000" but got "#fff"
-FAIL Invalid simple color: no starting # sign assert_equals: expected "#000000" but got "fffffff"
-FAIL Invalid simple color: non ASCII hex digits assert_equals: expected "#000000" but got "#gggggg"
-FAIL Invalid simple color: foobar assert_equals: expected "#000000" but got "foobar"
-FAIL Invalid color: trailing Null (U+0000) assert_equals: expected "#000000" but got "#ffffff"
-FAIL Invalid color: trailing ; assert_equals: expected "#000000" but got "#ffffff;"
-FAIL Invalid color: leading space assert_equals: expected "#000000" but got " #ffffff"
-FAIL Invalid color: trailing space assert_equals: expected "#000000" but got "#ffffff "
-FAIL Invalid color: leading+trailing spaces assert_equals: expected "#000000" but got " #ffffff "
-FAIL Invalid color: keyword crimson assert_equals: expected "#000000" but got "crimson"
-FAIL Invalid color: keyword bisque assert_equals: expected "#000000" but got "bisque"
-FAIL Invalid color: keyword currentColor assert_equals: expected "#000000" but got "currentColor"
-FAIL Invalid color: keyword transparent assert_equals: expected "#000000" but got "transparent"
-FAIL Invalid color: keyword ActiveBorder assert_equals: expected "#000000" but got "ActiveBorder"
-FAIL Invalid color: keyword inherit assert_equals: expected "#000000" but got "inherit"
-FAIL Invalid color: rgb(1,1,1) assert_equals: expected "#000000" but got "rgb(1,1,1)"
-FAIL Invalid color: rgb(1,1,1,1) assert_equals: expected "#000000" but got "rgb(1,1,1,1)"
-FAIL Invalid color: PILE OF POO (U+1F4A9) assert_equals: expected "#000000" but got "#FFFFFὊ9"
+PASS Valid simple color (containing LATIN CAPITAL LETTERS): should return #ffffff (converted to ASCII lowercase) 
+PASS Zero-padding 
+PASS Invalid simple color: not 7 characters long 
+PASS Invalid simple color: no starting # sign 
+PASS Invalid simple color: non ASCII hex digits 
+PASS Invalid simple color: foobar 
+PASS Invalid color: trailing Null (U+0000) 
+PASS Invalid color: trailing ; 
+PASS Invalid color: leading space 
+PASS Invalid color: trailing space 
+PASS Invalid color: leading+trailing spaces 
+PASS Invalid color: keyword crimson 
+PASS Invalid color: keyword bisque 
+PASS Invalid color: keyword currentColor 
+PASS Invalid color: keyword transparent 
+PASS Invalid color: keyword ActiveBorder 
+PASS Invalid color: keyword inherit 
+PASS Invalid color: rgb(1,1,1) 
+PASS Invalid color: rgb(1,1,1,1) 
+PASS Invalid color: PILE OF POO (U+1F4A9) 
 
index d5cd5d7..dd7b641 100644 (file)
@@ -225,9 +225,9 @@ input[type='button']
       AXRoleDescription: button
       
 input[type='color']
-      AXRole: AXTextField
+      AXRole: AXColorWell
       AXSubrole: 
-      AXRoleDescription: text field
+      AXRoleDescription: color well
       
 input[type='checkbox']
       AXRole: AXCheckBox
index 4b8c562..5f1f4b0 100644 (file)
@@ -1099,60 +1099,30 @@ PASS document.querySelector("input:read-only") is document.getElementById("testc
 PASS getComputedStyle(document.getElementById("testcase")).color is "rgb(0, 0, 0)"
 PASS getComputedStyle(document.getElementById("testcase")).backgroundColor is "rgb(1, 2, 3)"
 Testing color
-FAIL document.querySelectorAll("input:read-write").length should be 0. Was 1.
-FAIL document.querySelector("input:read-write") should be null. Was [object HTMLInputElement].
-FAIL document.querySelectorAll("input:read-only").length should be 1. Was 0.
-FAIL document.querySelector("input:read-only") should be [object HTMLInputElement]. Was null.
-FAIL getComputedStyle(document.getElementById("testcase")).color should be rgb(0, 0, 0). Was rgb(4, 5, 6).
-FAIL getComputedStyle(document.getElementById("testcase")).backgroundColor should be rgb(1, 2, 3). Was rgb(255, 255, 255).
 PASS document.querySelectorAll("input:read-write").length is 0
 PASS document.querySelector("input:read-write") is null
 PASS document.querySelectorAll("input:read-only").length is 1
 PASS document.querySelector("input:read-only") is document.getElementById("testcase")
 PASS getComputedStyle(document.getElementById("testcase")).color is "rgb(0, 0, 0)"
 PASS getComputedStyle(document.getElementById("testcase")).backgroundColor is "rgb(1, 2, 3)"
-FAIL document.querySelectorAll("input:read-write").length should be 0. Was 1.
-FAIL document.querySelector("input:read-write") should be null. Was [object HTMLInputElement].
-FAIL document.querySelectorAll("input:read-only").length should be 1. Was 0.
-FAIL document.querySelector("input:read-only") should be [object HTMLInputElement]. Was null.
-FAIL getComputedStyle(document.getElementById("testcase")).color should be rgb(0, 0, 0). Was rgb(4, 5, 6).
-FAIL getComputedStyle(document.getElementById("testcase")).backgroundColor should be rgb(1, 2, 3). Was rgb(255, 255, 255).
 PASS document.querySelectorAll("input:read-write").length is 0
 PASS document.querySelector("input:read-write") is null
 PASS document.querySelectorAll("input:read-only").length is 1
 PASS document.querySelector("input:read-only") is document.getElementById("testcase")
 PASS getComputedStyle(document.getElementById("testcase")).color is "rgb(0, 0, 0)"
 PASS getComputedStyle(document.getElementById("testcase")).backgroundColor is "rgb(1, 2, 3)"
-FAIL document.querySelectorAll("input:read-write").length should be 0. Was 1.
-FAIL document.querySelector("input:read-write") should be null. Was [object HTMLInputElement].
-FAIL document.querySelectorAll("input:read-only").length should be 1. Was 0.
-FAIL document.querySelector("input:read-only") should be [object HTMLInputElement]. Was null.
-FAIL getComputedStyle(document.getElementById("testcase")).color should be rgb(0, 0, 0). Was rgb(4, 5, 6).
-FAIL getComputedStyle(document.getElementById("testcase")).backgroundColor should be rgb(1, 2, 3). Was rgb(255, 255, 255).
 PASS document.querySelectorAll("input:read-write").length is 0
 PASS document.querySelector("input:read-write") is null
 PASS document.querySelectorAll("input:read-only").length is 1
 PASS document.querySelector("input:read-only") is document.getElementById("testcase")
 PASS getComputedStyle(document.getElementById("testcase")).color is "rgb(0, 0, 0)"
 PASS getComputedStyle(document.getElementById("testcase")).backgroundColor is "rgb(1, 2, 3)"
-FAIL document.querySelectorAll("input:read-write").length should be 0. Was 1.
-FAIL document.querySelector("input:read-write") should be null. Was [object HTMLInputElement].
-FAIL document.querySelectorAll("input:read-only").length should be 1. Was 0.
-FAIL document.querySelector("input:read-only") should be [object HTMLInputElement]. Was null.
-FAIL getComputedStyle(document.getElementById("testcase")).color should be rgb(0, 0, 0). Was rgb(4, 5, 6).
-FAIL getComputedStyle(document.getElementById("testcase")).backgroundColor should be rgb(1, 2, 3). Was rgb(255, 255, 255).
 PASS document.querySelectorAll("input:read-write").length is 0
 PASS document.querySelector("input:read-write") is null
 PASS document.querySelectorAll("input:read-only").length is 1
 PASS document.querySelector("input:read-only") is document.getElementById("testcase")
 PASS getComputedStyle(document.getElementById("testcase")).color is "rgb(0, 0, 0)"
 PASS getComputedStyle(document.getElementById("testcase")).backgroundColor is "rgb(1, 2, 3)"
-FAIL document.querySelectorAll("input:read-write").length should be 0. Was 1.
-FAIL document.querySelector("input:read-write") should be null. Was [object HTMLInputElement].
-FAIL document.querySelectorAll("input:read-only").length should be 1. Was 0.
-FAIL document.querySelector("input:read-only") should be [object HTMLInputElement]. Was null.
-FAIL getComputedStyle(document.getElementById("testcase")).color should be rgb(0, 0, 0). Was rgb(4, 5, 6).
-FAIL getComputedStyle(document.getElementById("testcase")).backgroundColor should be rgb(1, 2, 3). Was rgb(255, 255, 255).
 PASS document.querySelectorAll("input:read-write").length is 0
 PASS document.querySelector("input:read-write") is null
 PASS document.querySelectorAll("input:read-only").length is 1
@@ -1165,12 +1135,42 @@ PASS document.querySelectorAll("input:read-only").length is 1
 PASS document.querySelector("input:read-only") is document.getElementById("testcase")
 PASS getComputedStyle(document.getElementById("testcase")).color is "rgb(0, 0, 0)"
 PASS getComputedStyle(document.getElementById("testcase")).backgroundColor is "rgb(1, 2, 3)"
-FAIL document.querySelectorAll("input:read-write").length should be 0. Was 1.
-FAIL document.querySelector("input:read-write") should be null. Was [object HTMLInputElement].
-FAIL document.querySelectorAll("input:read-only").length should be 1. Was 0.
-FAIL document.querySelector("input:read-only") should be [object HTMLInputElement]. Was null.
-FAIL getComputedStyle(document.getElementById("testcase")).color should be rgb(0, 0, 0). Was rgb(4, 5, 6).
-FAIL getComputedStyle(document.getElementById("testcase")).backgroundColor should be rgb(1, 2, 3). Was rgb(255, 255, 255).
+PASS document.querySelectorAll("input:read-write").length is 0
+PASS document.querySelector("input:read-write") is null
+PASS document.querySelectorAll("input:read-only").length is 1
+PASS document.querySelector("input:read-only") is document.getElementById("testcase")
+PASS getComputedStyle(document.getElementById("testcase")).color is "rgb(0, 0, 0)"
+PASS getComputedStyle(document.getElementById("testcase")).backgroundColor is "rgb(1, 2, 3)"
+PASS document.querySelectorAll("input:read-write").length is 0
+PASS document.querySelector("input:read-write") is null
+PASS document.querySelectorAll("input:read-only").length is 1
+PASS document.querySelector("input:read-only") is document.getElementById("testcase")
+PASS getComputedStyle(document.getElementById("testcase")).color is "rgb(0, 0, 0)"
+PASS getComputedStyle(document.getElementById("testcase")).backgroundColor is "rgb(1, 2, 3)"
+PASS document.querySelectorAll("input:read-write").length is 0
+PASS document.querySelector("input:read-write") is null
+PASS document.querySelectorAll("input:read-only").length is 1
+PASS document.querySelector("input:read-only") is document.getElementById("testcase")
+PASS getComputedStyle(document.getElementById("testcase")).color is "rgb(0, 0, 0)"
+PASS getComputedStyle(document.getElementById("testcase")).backgroundColor is "rgb(1, 2, 3)"
+PASS document.querySelectorAll("input:read-write").length is 0
+PASS document.querySelector("input:read-write") is null
+PASS document.querySelectorAll("input:read-only").length is 1
+PASS document.querySelector("input:read-only") is document.getElementById("testcase")
+PASS getComputedStyle(document.getElementById("testcase")).color is "rgb(0, 0, 0)"
+PASS getComputedStyle(document.getElementById("testcase")).backgroundColor is "rgb(1, 2, 3)"
+PASS document.querySelectorAll("input:read-write").length is 0
+PASS document.querySelector("input:read-write") is null
+PASS document.querySelectorAll("input:read-only").length is 1
+PASS document.querySelector("input:read-only") is document.getElementById("testcase")
+PASS getComputedStyle(document.getElementById("testcase")).color is "rgb(0, 0, 0)"
+PASS getComputedStyle(document.getElementById("testcase")).backgroundColor is "rgb(1, 2, 3)"
+PASS document.querySelectorAll("input:read-write").length is 0
+PASS document.querySelector("input:read-write") is null
+PASS document.querySelectorAll("input:read-only").length is 1
+PASS document.querySelector("input:read-only") is document.getElementById("testcase")
+PASS getComputedStyle(document.getElementById("testcase")).color is "rgb(0, 0, 0)"
+PASS getComputedStyle(document.getElementById("testcase")).backgroundColor is "rgb(1, 2, 3)"
 Testing checkbox
 PASS document.querySelectorAll("input:read-write").length is 0
 PASS document.querySelector("input:read-write") is null
index 1ff70d1..7045e23 100644 (file)
@@ -2806,11 +2806,11 @@ PASS input.type: setAttribute() to "xrange"
 PASS input.type: setAttribute() to "range\0" 
 PASS input.type: setAttribute() to "ange" 
 PASS input.type: setAttribute() to "RANGE" 
-FAIL input.type: setAttribute() to "color" assert_equals: IDL get expected "color" but got "text"
+PASS input.type: setAttribute() to "color" 
 PASS input.type: setAttribute() to "xcolor" 
 PASS input.type: setAttribute() to "color\0" 
 PASS input.type: setAttribute() to "olor" 
-FAIL input.type: setAttribute() to "COLOR" assert_equals: IDL get expected "color" but got "text"
+PASS input.type: setAttribute() to "COLOR" 
 PASS input.type: setAttribute() to "checkbox" 
 PASS input.type: setAttribute() to "xcheckbox" 
 PASS input.type: setAttribute() to "checkbox\0" 
@@ -2933,11 +2933,11 @@ PASS input.type: IDL set to "xrange"
 PASS input.type: IDL set to "range\0" 
 PASS input.type: IDL set to "ange" 
 PASS input.type: IDL set to "RANGE" 
-FAIL input.type: IDL set to "color" assert_equals: IDL get expected "color" but got "text"
+PASS input.type: IDL set to "color" 
 PASS input.type: IDL set to "xcolor" 
 PASS input.type: IDL set to "color\0" 
 PASS input.type: IDL set to "olor" 
-FAIL input.type: IDL set to "COLOR" assert_equals: IDL get expected "color" but got "text"
+PASS input.type: IDL set to "COLOR" 
 PASS input.type: IDL set to "checkbox" 
 PASS input.type: IDL set to "xcheckbox" 
 PASS input.type: IDL set to "checkbox\0" 
index 23b4dc4..117da17 100644 (file)
@@ -4,5 +4,8 @@ PASS [INPUT in EMAIL status] The multiple attribute is false and the value attri
 PASS [INPUT in EMAIL status] The multiple attribute is true and the value contains valid e-mail addresses 
 PASS [INPUT in EMAIL status] The multiple attribute is true and the value attribute contains a ',' 
 FAIL [INPUT in DATETIME-LOCAL status] The datetime-local type must be supported. assert_equals: The datetime-local type should be supported. expected "datetime-local" but got "text"
-FAIL [INPUT in COLOR status] The color type must be supported. assert_equals: The color type should be supported. expected "color" but got "text"
+PASS [INPUT in COLOR status] The value attribute is empty 
+PASS [INPUT in COLOR status] The value attribute is a valid sample color 
+PASS [INPUT in COLOR status] The value attribute is not a valid lowercase sample color 
+PASS [INPUT in COLOR status] The value attribute cannot convert to a valid sample color 
 
index 90053c7..7a39e98 100644 (file)
@@ -36,7 +36,10 @@ FAIL [INPUT in DATE status] The date type must be supported. assert_equals: The
 FAIL [INPUT in MONTH status] The month type must be supported. assert_equals: The month type should be supported. expected "month" but got "text"
 FAIL [INPUT in WEEK status] The week type must be supported. assert_equals: The week type should be supported. expected "week" but got "text"
 FAIL [INPUT in TIME status] The time type must be supported. assert_equals: The time type should be supported. expected "time" but got "text"
-FAIL [INPUT in COLOR status] The color type must be supported. assert_equals: The color type should be supported. expected "color" but got "text"
+PASS [INPUT in COLOR status] Must be barred from the constraint validation if it is disabled 
+PASS [INPUT in COLOR status] The willValidate attribute must be true if an element is mutable 
+PASS [INPUT in COLOR status] Must be barred from the constraint validation if it is readonly 
+PASS [INPUT in COLOR status] The willValidate attribute must be false if it has a datalist ancestor 
 PASS [INPUT in FILE status] Must be barred from the constraint validation if it is disabled 
 PASS [INPUT in FILE status] The willValidate attribute must be true if an element is mutable 
 PASS [INPUT in FILE status] Must be barred from the constraint validation if it is readonly 
index 2ee60ae..ca30b1b 100644 (file)
@@ -153,24 +153,22 @@ PASS setRangeText on an input[type=range] throws InvalidStateError
 FAIL setSelectionRange on an input[type=range] throws InvalidStateError assert_throws: function "function (){
         el.setSelectionRange(0, 1);
       }" threw object "TypeError: Type error" that is not a DOMException InvalidStateError: property "code" is equal to undefined, expected 11
-FAIL selectionStart on an input[type=color] returns null assert_equals: expected (object) null but got (number) 0
-FAIL selectionEnd on an input[type=color] returns null assert_equals: expected (object) null but got (number) 0
-FAIL selectionDirection on an input[type=color] returns null assert_equals: expected (object) null but got (string) "none"
+FAIL selectionStart on an input[type=color] returns null Type error
+FAIL selectionEnd on an input[type=color] returns null Type error
+FAIL selectionDirection on an input[type=color] returns null Type error
 FAIL assigning selectionStart on an input[type=color] throws InvalidStateError assert_throws: function "function (){
         el.selectionStart = 0;
-      }" did not throw
+      }" threw object "TypeError: Type error" that is not a DOMException InvalidStateError: property "code" is equal to undefined, expected 11
 FAIL assigning selectionEnd on an input[type=color] throws InvalidStateError assert_throws: function "function (){
         el.selectionEnd = 0;
-      }" did not throw
+      }" threw object "TypeError: Type error" that is not a DOMException InvalidStateError: property "code" is equal to undefined, expected 11
 FAIL assigning selectionDirection on an input[type=color] throws InvalidStateError assert_throws: function "function (){
         el.selectionDirection = 'none';
-      }" did not throw
-FAIL setRangeText on an input[type=color] throws InvalidStateError assert_throws: function "function (){
-        el.setRangeText("foobar");
-      }" did not throw
+      }" threw object "TypeError: Type error" that is not a DOMException InvalidStateError: property "code" is equal to undefined, expected 11
+PASS setRangeText on an input[type=color] throws InvalidStateError 
 FAIL setSelectionRange on an input[type=color] throws InvalidStateError assert_throws: function "function (){
         el.setSelectionRange(0, 1);
-      }" did not throw
+      }" threw object "TypeError: Type error" that is not a DOMException InvalidStateError: property "code" is equal to undefined, expected 11
 FAIL selectionStart on an input[type=checkbox] returns null Type error
 FAIL selectionEnd on an input[type=checkbox] returns null Type error
 FAIL selectionDirection on an input[type=checkbox] returns null Type error
index 1c77052..3661aa9 100644 (file)
@@ -12,7 +12,7 @@ FAIL input type week should support the select() method assert_equals: the given
 FAIL input type time should support the select() method assert_equals: the given input type is not supported expected "time" but got "text"
 FAIL input type datetime-local should support the select() method assert_equals: the given input type is not supported expected "datetime-local" but got "text"
 PASS input type number should support the select() method 
-FAIL input type color should support the select() method assert_equals: the given input type is not supported expected "color" but got "text"
+PASS input type color should support the select() method 
 PASS input type file should support the select() method 
 FAIL input type hidden should do nothing when the select() method is called (but, not throw) Type error
 FAIL input type range should do nothing when the select() method is called (but, not throw) Type error
@@ -37,7 +37,7 @@ FAIL input type time should not support variable-length selections assert_equals
 FAIL input type datetime-local should not support variable-length selections assert_equals: the given input type is not supported expected "datetime-local" but got "text"
 FAIL input type number should not support variable-length selections assert_equals: getting input.selectionStart expected (object) null but got (number) 0
 FAIL input type range should not support variable-length selections Type error
-FAIL input type color should not support variable-length selections assert_equals: the given input type is not supported expected "color" but got "text"
+FAIL input type color should not support variable-length selections Type error
 FAIL input type checkbox should not support variable-length selections Type error
 FAIL input type radio should not support variable-length selections Type error
 FAIL input type file should not support variable-length selections Type error
index 5a8d882..3b2a846 100644 (file)
@@ -33,7 +33,7 @@ FAIL change state from text to week assert_equals: input.value should be '' afte
 FAIL change state from text to time assert_equals: input.value should be '' after change of state expected "" but got "  foobar  "
 FAIL change state from text to number assert_equals: selectionStart should be unchanged expected 2 but got 0
 FAIL change state from text to range Type error
-FAIL change state from text to color assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
+FAIL change state from text to color Type error
 FAIL change state from text to checkbox Type error
 FAIL change state from text to radio Type error
 PASS change state from text to file 
@@ -54,7 +54,7 @@ FAIL change state from search to week assert_equals: input.value should be '' af
 FAIL change state from search to time assert_equals: input.value should be '' after change of state expected "" but got "  foobar  "
 FAIL change state from search to number assert_equals: selectionStart should be unchanged expected 2 but got 0
 FAIL change state from search to range Type error
-FAIL change state from search to color assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
+FAIL change state from search to color Type error
 FAIL change state from search to checkbox Type error
 FAIL change state from search to radio Type error
 PASS change state from search to file 
@@ -75,7 +75,7 @@ FAIL change state from tel to week assert_equals: input.value should be '' after
 FAIL change state from tel to time assert_equals: input.value should be '' after change of state expected "" but got "  foobar  "
 FAIL change state from tel to number assert_equals: selectionStart should be unchanged expected 2 but got 0
 FAIL change state from tel to range Type error
-FAIL change state from tel to color assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
+FAIL change state from tel to color Type error
 FAIL change state from tel to checkbox Type error
 FAIL change state from tel to radio Type error
 PASS change state from tel to file 
@@ -96,7 +96,7 @@ FAIL change state from url to week assert_equals: input.value should be '' after
 FAIL change state from url to time assert_equals: input.value should be '' after change of state expected "" but got "foobar"
 FAIL change state from url to number assert_equals: selectionStart should be unchanged expected 2 but got 0
 FAIL change state from url to range Type error
-FAIL change state from url to color assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "foobar"
+FAIL change state from url to color Type error
 FAIL change state from url to checkbox Type error
 FAIL change state from url to radio Type error
 PASS change state from url to file 
@@ -117,7 +117,7 @@ FAIL change state from email to week assert_equals: input.value should be '' aft
 FAIL change state from email to time assert_equals: input.value should be '' after change of state expected "" but got "foobar"
 FAIL change state from email to number assert_equals: selectionStart should be unchanged expected 2 but got 0
 FAIL change state from email to range Type error
-FAIL change state from email to color assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "foobar"
+FAIL change state from email to color Type error
 FAIL change state from email to checkbox Type error
 FAIL change state from email to radio Type error
 PASS change state from email to file 
@@ -138,7 +138,7 @@ FAIL change state from password to week assert_equals: input.value should be ''
 FAIL change state from password to time assert_equals: input.value should be '' after change of state expected "" but got "  foobar  "
 FAIL change state from password to number assert_equals: selectionStart should be unchanged expected 2 but got 0
 FAIL change state from password to range Type error
-FAIL change state from password to color assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
+FAIL change state from password to color Type error
 FAIL change state from password to checkbox Type error
 FAIL change state from password to radio Type error
 PASS change state from password to file 
@@ -159,7 +159,7 @@ FAIL change state from datetime-local to week assert_equals: input.value should
 FAIL change state from datetime-local to time assert_equals: input.value should be '' after change of state expected "" but got "  foobar  "
 FAIL change state from datetime-local to number assert_equals: selectionStart should be unchanged expected 2 but got 0
 FAIL change state from datetime-local to range Type error
-FAIL change state from datetime-local to color assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
+FAIL change state from datetime-local to color Type error
 FAIL change state from datetime-local to checkbox assert_equals: input.value should be 'on' after change of state expected "on" but got "  foobar  "
 FAIL change state from datetime-local to radio assert_equals: input.value should be 'on' after change of state expected "on" but got "  foobar  "
 PASS change state from datetime-local to file 
@@ -180,7 +180,7 @@ FAIL change state from date to week assert_equals: input.value should be '' afte
 FAIL change state from date to time assert_equals: input.value should be '' after change of state expected "" but got "  foobar  "
 FAIL change state from date to number assert_equals: selectionStart should be unchanged expected 2 but got 0
 FAIL change state from date to range Type error
-FAIL change state from date to color assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
+FAIL change state from date to color Type error
 FAIL change state from date to checkbox assert_equals: input.value should be 'on' after change of state expected "on" but got "  foobar  "
 FAIL change state from date to radio assert_equals: input.value should be 'on' after change of state expected "on" but got "  foobar  "
 PASS change state from date to file 
@@ -201,7 +201,7 @@ FAIL change state from month to week assert_equals: input.value should be '' aft
 FAIL change state from month to time assert_equals: input.value should be '' after change of state expected "" but got "  foobar  "
 FAIL change state from month to number assert_equals: selectionStart should be unchanged expected 2 but got 0
 FAIL change state from month to range Type error
-FAIL change state from month to color assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
+FAIL change state from month to color Type error
 FAIL change state from month to checkbox assert_equals: input.value should be 'on' after change of state expected "on" but got "  foobar  "
 FAIL change state from month to radio assert_equals: input.value should be 'on' after change of state expected "on" but got "  foobar  "
 PASS change state from month to file 
@@ -222,7 +222,7 @@ FAIL change state from week to month assert_equals: input.value should be '' aft
 FAIL change state from week to time assert_equals: input.value should be '' after change of state expected "" but got "  foobar  "
 FAIL change state from week to number assert_equals: selectionStart should be unchanged expected 2 but got 0
 FAIL change state from week to range Type error
-FAIL change state from week to color assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
+FAIL change state from week to color Type error
 FAIL change state from week to checkbox assert_equals: input.value should be 'on' after change of state expected "on" but got "  foobar  "
 FAIL change state from week to radio assert_equals: input.value should be 'on' after change of state expected "on" but got "  foobar  "
 PASS change state from week to file 
@@ -243,7 +243,7 @@ FAIL change state from time to month assert_equals: input.value should be '' aft
 FAIL change state from time to week assert_equals: input.value should be '' after change of state expected "" but got "  foobar  "
 FAIL change state from time to number assert_equals: selectionStart should be unchanged expected 2 but got 0
 FAIL change state from time to range Type error
-FAIL change state from time to color assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
+FAIL change state from time to color Type error
 FAIL change state from time to checkbox assert_equals: input.value should be 'on' after change of state expected "on" but got "  foobar  "
 FAIL change state from time to radio assert_equals: input.value should be 'on' after change of state expected "on" but got "  foobar  "
 PASS change state from time to file 
@@ -264,7 +264,7 @@ FAIL change state from number to month assert_equals: selectionStart should be u
 FAIL change state from number to week assert_equals: selectionStart should be unchanged expected 2 but got 0
 FAIL change state from number to time assert_equals: selectionStart should be unchanged expected 2 but got 0
 FAIL change state from number to range Type error
-FAIL change state from number to color assert_equals: input.value should be '#000000' after change of state expected "#000000" but got ""
+FAIL change state from number to color Type error
 FAIL change state from number to checkbox assert_equals: input.value should be 'on' after change of state expected "on" but got ""
 FAIL change state from number to radio assert_equals: input.value should be 'on' after change of state expected "on" but got ""
 PASS change state from number to file 
@@ -293,27 +293,27 @@ FAIL change state from range to submit Type error
 FAIL change state from range to image Type error
 FAIL change state from range to reset Type error
 FAIL change state from range to button Type error
-FAIL change state from color to hidden assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
-FAIL change state from color to text assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
-FAIL change state from color to search assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
-FAIL change state from color to tel assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
-FAIL change state from color to url assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "foobar"
-FAIL change state from color to email assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "foobar"
-FAIL change state from color to password assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
-FAIL change state from color to datetime-local assert_equals: input.value should be '' after change of state expected "" but got "  foobar  "
-FAIL change state from color to date assert_equals: input.value should be '' after change of state expected "" but got "  foobar  "
-FAIL change state from color to month assert_equals: input.value should be '' after change of state expected "" but got "  foobar  "
-FAIL change state from color to week assert_equals: input.value should be '' after change of state expected "" but got "  foobar  "
-FAIL change state from color to time assert_equals: input.value should be '' after change of state expected "" but got "  foobar  "
-FAIL change state from color to number assert_equals: selectionStart should be unchanged expected 2 but got 0
+FAIL change state from color to hidden Type error
+FAIL change state from color to text Type error
+FAIL change state from color to search Type error
+FAIL change state from color to tel Type error
+FAIL change state from color to url Type error
+FAIL change state from color to email Type error
+FAIL change state from color to password Type error
+FAIL change state from color to datetime-local Type error
+FAIL change state from color to date Type error
+FAIL change state from color to month Type error
+FAIL change state from color to week Type error
+FAIL change state from color to time Type error
+FAIL change state from color to number Type error
 FAIL change state from color to range Type error
-FAIL change state from color to checkbox assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
-FAIL change state from color to radio assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
+FAIL change state from color to checkbox Type error
+FAIL change state from color to radio Type error
 PASS change state from color to file 
-FAIL change state from color to submit assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
-FAIL change state from color to image assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
-FAIL change state from color to reset assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
-FAIL change state from color to button assert_equals: input.value should be '#000000' after change of state expected "#000000" but got "  foobar  "
+FAIL change state from color to submit Type error
+FAIL change state from color to image Type error
+FAIL change state from color to reset Type error
+FAIL change state from color to button Type error
 FAIL change state from checkbox to hidden Type error
 FAIL change state from checkbox to text Type error
 FAIL change state from checkbox to search Type error
index 8762f04..74d5000 100644 (file)
@@ -39,6 +39,6 @@ PASS value IDL attribute of input type number without value attribute
 PASS value IDL attribute of input type number with value attribute 
 PASS value IDL attribute of input type range without value attribute 
 PASS value IDL attribute of input type range with value attribute 
-FAIL value IDL attribute of input type color without value attribute assert_equals: expected "#000000" but got "foo"
-FAIL value IDL attribute of input type color with value attribute assert_equals: expected "#000000" but got "foo"
+PASS value IDL attribute of input type color without value attribute 
+PASS value IDL attribute of input type color with value attribute 
 
index cd48261..083e08b 100644 (file)
@@ -1,6 +1,6 @@
 
-FAIL The :read-write pseudo-class must not match input elements to which the readonly attribute does not apply assert_array_equals: lengths differ, expected 0 got 1
-FAIL The :read-only pseudo-class must match input elements to which the readonly attribute does not apply assert_array_equals: lengths differ, expected 10 got 9
+PASS The :read-write pseudo-class must not match input elements to which the readonly attribute does not apply 
+PASS The :read-only pseudo-class must match input elements to which the readonly attribute does not apply 
 PASS The :read-write pseudo-class must match input elements to which the readonly attribute applies, and that are mutable 
 FAIL The :read-only pseudo-class must not match input elements to which the readonly attribute applies, and that are mutable assert_array_equals: lengths differ, expected 1 got 4
 PASS The :read-write pseudo-class must not match input elements after the readonly attribute has been added 
index 57dc5c5..dec7bc6 100644 (file)
@@ -1,3 +1,12 @@
+2018-10-08  Aditya Keerthi  <akeerthi@apple.com>
+
+        Make <input type=color> a runtime enabled (on-by-default) feature
+        https://bugs.webkit.org/show_bug.cgi?id=189162
+
+        Reviewed by Wenson Hsieh and Tim Horton.
+
+        * Configurations/FeatureDefines.xcconfig:
+
 2018-10-08  Devin Rousso  <drousso@apple.com>
 
         Web Inspector: group media network entries by the node that triggered the request
index 68efce9..e848483 100644 (file)
@@ -173,7 +173,7 @@ ENABLE_INDEXED_DATABASE = ENABLE_INDEXED_DATABASE;
 
 ENABLE_INDEXED_DATABASE_IN_WORKERS = ENABLE_INDEXED_DATABASE_IN_WORKERS;
 
-ENABLE_INPUT_TYPE_COLOR = ;
+ENABLE_INPUT_TYPE_COLOR = ENABLE_INPUT_TYPE_COLOR;
 
 ENABLE_INPUT_TYPE_DATETIMELOCAL = $(ENABLE_INPUT_TYPE_DATETIMELOCAL_$(WK_COCOA_TOUCH));
 ENABLE_INPUT_TYPE_DATETIMELOCAL_cocoatouch = ENABLE_INPUT_TYPE_DATETIMELOCAL;
index 4696cad..9c8c4a7 100644 (file)
@@ -1,3 +1,12 @@
+2018-10-08  Aditya Keerthi  <akeerthi@apple.com>
+
+        Make <input type=color> a runtime enabled (on-by-default) feature
+        https://bugs.webkit.org/show_bug.cgi?id=189162
+
+        Reviewed by Wenson Hsieh and Tim Horton.
+
+        * wtf/FeatureDefines.h:
+
 2018-10-06  Mark Lam  <mark.lam@apple.com>
 
         Adding some temporary asserts with data logging to debug a mysterious ASAN bot crash.
index 858c298..d47ad8f 100644 (file)
@@ -466,7 +466,7 @@ the public iOS SDK. See <https://webkit.org/b/179167>. */
 #endif
 
 #if !defined(ENABLE_INPUT_TYPE_COLOR)
-#define ENABLE_INPUT_TYPE_COLOR 0
+#define ENABLE_INPUT_TYPE_COLOR 1
 #endif
 
 #if !defined(ENABLE_INPUT_TYPE_DATE)
index 2fd5cb6..1375d24 100644 (file)
@@ -1,3 +1,22 @@
+2018-10-08  Aditya Keerthi  <akeerthi@apple.com>
+
+        Make <input type=color> a runtime enabled (on-by-default) feature
+        https://bugs.webkit.org/show_bug.cgi?id=189162
+
+        Reviewed by Wenson Hsieh and Tim Horton.
+
+        Enable the build-time flag INPUT_TYPE_COLOR by default and introduce a runtime-enabled feature for input type
+        color, also on by default.
+
+        Covered by rebaselining existing layout tests.
+
+        * Configurations/FeatureDefines.xcconfig:
+        * html/InputType.cpp:
+        (WebCore::createInputTypeFactoryMap):
+        * page/RuntimeEnabledFeatures.h:
+        (WebCore::RuntimeEnabledFeatures::inputTypeColorEnabled const):
+        (WebCore::RuntimeEnabledFeatures::setInputTypeColorEnabled):
+
 2018-10-08  Jer Noble  <jer.noble@apple.com>
 
         ISOTrackEncryptionBox returns incorrect defaultKeyID
index 68efce9..e848483 100644 (file)
@@ -173,7 +173,7 @@ ENABLE_INDEXED_DATABASE = ENABLE_INDEXED_DATABASE;
 
 ENABLE_INDEXED_DATABASE_IN_WORKERS = ENABLE_INDEXED_DATABASE_IN_WORKERS;
 
-ENABLE_INPUT_TYPE_COLOR = ;
+ENABLE_INPUT_TYPE_COLOR = ENABLE_INPUT_TYPE_COLOR;
 
 ENABLE_INPUT_TYPE_DATETIMELOCAL = $(ENABLE_INPUT_TYPE_DATETIMELOCAL_$(WK_COCOA_TOUCH));
 ENABLE_INPUT_TYPE_DATETIMELOCAL_cocoatouch = ENABLE_INPUT_TYPE_DATETIMELOCAL;
index 276d9ae..5940948 100644 (file)
@@ -1,3 +1,12 @@
+2018-10-08  Aditya Keerthi  <akeerthi@apple.com>
+
+        Make <input type=color> a runtime enabled (on-by-default) feature
+        https://bugs.webkit.org/show_bug.cgi?id=189162
+
+        Reviewed by Wenson Hsieh and Tim Horton.
+
+        * Configurations/FeatureDefines.xcconfig:
+
 2018-10-05  Jer Noble  <jer.noble@apple.com>
 
         Unreviewed build fix: internal builds can't find AVVideoPerformanceMetrics.
index 68efce9..e848483 100644 (file)
@@ -173,7 +173,7 @@ ENABLE_INDEXED_DATABASE = ENABLE_INDEXED_DATABASE;
 
 ENABLE_INDEXED_DATABASE_IN_WORKERS = ENABLE_INDEXED_DATABASE_IN_WORKERS;
 
-ENABLE_INPUT_TYPE_COLOR = ;
+ENABLE_INPUT_TYPE_COLOR = ENABLE_INPUT_TYPE_COLOR;
 
 ENABLE_INPUT_TYPE_DATETIMELOCAL = $(ENABLE_INPUT_TYPE_DATETIMELOCAL_$(WK_COCOA_TOUCH));
 ENABLE_INPUT_TYPE_DATETIMELOCAL_cocoatouch = ENABLE_INPUT_TYPE_DATETIMELOCAL;
index dc1be9a..ac833c4 100644 (file)
@@ -104,7 +104,7 @@ static InputTypeFactoryMap createInputTypeFactoryMap()
         { nullptr, &InputTypeNames::button, &createInputType<ButtonInputType> },
         { nullptr, &InputTypeNames::checkbox, &createInputType<CheckboxInputType> },
 #if ENABLE(INPUT_TYPE_COLOR)
-        { nullptr, &InputTypeNames::color, &createInputType<ColorInputType> },
+        { &RuntimeEnabledFeatures::inputTypeColorEnabled, &InputTypeNames::color, &createInputType<ColorInputType> },
 #endif
 #if ENABLE(INPUT_TYPE_DATE)
         { &RuntimeEnabledFeatures::inputTypeDateEnabled, &InputTypeNames::date, &createInputType<DateInputType> },
index 71e62e5..608af3e 100644 (file)
@@ -207,6 +207,11 @@ public:
     bool legacyCSSVendorPrefixesEnabled() const { return m_isLegacyCSSVendorPrefixesEnabled; }
 #endif
 
+#if ENABLE(INPUT_TYPE_COLOR)
+    bool inputTypeColorEnabled() const { return m_isInputTypeColorEnabled; }
+    void setInputTypeColorEnabled(bool isEnabled) { m_isInputTypeColorEnabled = isEnabled; }
+#endif
+
 #if ENABLE(INPUT_TYPE_DATE)
     bool inputTypeDateEnabled() const { return m_isInputTypeDateEnabled; }
     void setInputTypeDateEnabled(bool isEnabled) { m_isInputTypeDateEnabled = isEnabled; }
@@ -363,6 +368,10 @@ private:
     bool m_isLegacyCSSVendorPrefixesEnabled { false };
 #endif
 
+#if ENABLE(INPUT_TYPE_COLOR)
+    bool m_isInputTypeColorEnabled { true };
+#endif
+
 #if ENABLE(INPUT_TYPE_DATE)
     bool m_isInputTypeDateEnabled { true };
 #endif
index 6851b8b..015f19b 100644 (file)
@@ -1,3 +1,19 @@
+2018-10-08  Aditya Keerthi  <akeerthi@apple.com>
+
+        Make <input type=color> a runtime enabled (on-by-default) feature
+        https://bugs.webkit.org/show_bug.cgi?id=189162
+
+        Reviewed by Wenson Hsieh and Tim Horton.
+
+        * Configurations/FeatureDefines.xcconfig:
+        * Shared/WebPreferences.yaml:
+
+        Add an experimental feature flag for input type=color.
+
+        * UIProcess/mac/WebColorPickerMac.mm:
+        (-[WKPopoverColorWell webDelegate]):
+        (-[WKPopoverColorWell setWebDelegate:]):
+
 2018-10-08  Tim Horton  <timothy_horton@apple.com>
 
         Try to fix the build
index 68efce9..e848483 100644 (file)
@@ -173,7 +173,7 @@ ENABLE_INDEXED_DATABASE = ENABLE_INDEXED_DATABASE;
 
 ENABLE_INDEXED_DATABASE_IN_WORKERS = ENABLE_INDEXED_DATABASE_IN_WORKERS;
 
-ENABLE_INPUT_TYPE_COLOR = ;
+ENABLE_INPUT_TYPE_COLOR = ENABLE_INPUT_TYPE_COLOR;
 
 ENABLE_INPUT_TYPE_DATETIMELOCAL = $(ENABLE_INPUT_TYPE_DATETIMELOCAL_$(WK_COCOA_TOUCH));
 ENABLE_INPUT_TYPE_DATETIMELOCAL_cocoatouch = ENABLE_INPUT_TYPE_DATETIMELOCAL;
index 1309fb1..0ee0280 100644 (file)
@@ -1386,3 +1386,12 @@ SelectionAcrossShadowBoundariesEnabled:
   humanReadableDescription: "Allow user-initiated selection across shadow DOM boundaries"
   category: internal
   webcoreName: selectionAcrossShadowBoundariesEnabled
+
+InputTypeColorEnabled:
+  type: bool
+  defaultValue: true
+  humanReadableName: "Color Inputs"
+  humanReadableDescription: "Enable input elements of type color"
+  category: experimental
+  webcoreBinding: RuntimeEnabledFeatures
+  condition: ENABLE(INPUT_TYPE_COLOR)
index 34a360b..305c216 100644 (file)
@@ -41,6 +41,7 @@
 #import <pal/spi/mac/NSColorWellSPI.h>
 #import <pal/spi/mac/NSPopoverColorWellSPI.h>
 #import <pal/spi/mac/NSPopoverSPI.h>
+#import <wtf/WeakObjCPtr.h>
 
 static const size_t maxColorSuggestions = 12;
 static const CGFloat colorPickerMatrixNumColumns = 12.0;
@@ -59,6 +60,7 @@ static const CGFloat colorPickerMatrixSwatchWidth = 12.0;
 
 @interface WKPopoverColorWell : NSPopoverColorWell {
     RetainPtr<NSColorList> _suggestedColors;
+    WeakObjCPtr<id <WKPopoverColorWellDelegate>> _webDelegate;
 }
 
 @property (nonatomic, weak) id<WKPopoverColorWellDelegate> webDelegate;
@@ -151,6 +153,16 @@ void WebColorPickerMac::showColorPicker(const WebCore::Color& color)
     return colorPopover;
 }
 
+- (id <WKPopoverColorWellDelegate>)webDelegate
+{
+    return _webDelegate.getAutoreleased();
+}
+
+- (void)setWebDelegate:(id <WKPopoverColorWellDelegate>)webDelegate
+{
+    _webDelegate = webDelegate;
+}
+
 - (void)_showPopover
 {
     NSPopover *popover = [[self class] _colorPopoverCreateIfNecessary:YES];
index 457a973..7ab750a 100644 (file)
@@ -1,3 +1,12 @@
+2018-10-08  Aditya Keerthi  <akeerthi@apple.com>
+
+        Make <input type=color> a runtime enabled (on-by-default) feature
+        https://bugs.webkit.org/show_bug.cgi?id=189162
+
+        Reviewed by Wenson Hsieh and Tim Horton.
+
+        * Configurations/FeatureDefines.xcconfig:
+
 2018-10-07  Dan Bernstein  <mitz@apple.com>
 
         Fixed building with the latest macOS SDK
index 68efce9..e848483 100644 (file)
@@ -173,7 +173,7 @@ ENABLE_INDEXED_DATABASE = ENABLE_INDEXED_DATABASE;
 
 ENABLE_INDEXED_DATABASE_IN_WORKERS = ENABLE_INDEXED_DATABASE_IN_WORKERS;
 
-ENABLE_INPUT_TYPE_COLOR = ;
+ENABLE_INPUT_TYPE_COLOR = ENABLE_INPUT_TYPE_COLOR;
 
 ENABLE_INPUT_TYPE_DATETIMELOCAL = $(ENABLE_INPUT_TYPE_DATETIMELOCAL_$(WK_COCOA_TOUCH));
 ENABLE_INPUT_TYPE_DATETIMELOCAL_cocoatouch = ENABLE_INPUT_TYPE_DATETIMELOCAL;
index 2c15d12..c454637 100644 (file)
@@ -1,3 +1,12 @@
+2018-10-08  Aditya Keerthi  <akeerthi@apple.com>
+
+        Make <input type=color> a runtime enabled (on-by-default) feature
+        https://bugs.webkit.org/show_bug.cgi?id=189162
+
+        Reviewed by Wenson Hsieh and Tim Horton.
+
+        * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
+
 2018-10-08  Jer Noble  <jer.noble@apple.com>
 
         ISOTrackEncryptionBox returns incorrect defaultKeyID
index 68efce9..e848483 100644 (file)
@@ -173,7 +173,7 @@ ENABLE_INDEXED_DATABASE = ENABLE_INDEXED_DATABASE;
 
 ENABLE_INDEXED_DATABASE_IN_WORKERS = ENABLE_INDEXED_DATABASE_IN_WORKERS;
 
-ENABLE_INPUT_TYPE_COLOR = ;
+ENABLE_INPUT_TYPE_COLOR = ENABLE_INPUT_TYPE_COLOR;
 
 ENABLE_INPUT_TYPE_DATETIMELOCAL = $(ENABLE_INPUT_TYPE_DATETIMELOCAL_$(WK_COCOA_TOUCH));
 ENABLE_INPUT_TYPE_DATETIMELOCAL_cocoatouch = ENABLE_INPUT_TYPE_DATETIMELOCAL;