Get the features.json files ready for open contributions
[WebKit-https.git] / Source / WebCore / features.json
1 {
2     "specification": [
3     {
4         "name": "CSS Media Queries Level 4",
5         "url": "http://dev.w3.org/csswg/mediaqueries-4/",
6         "keywords": ["css media queries", "media queries"],
7         "category": "css"
8     },
9     {
10         "name": "CSS Selectors Level 4",
11         "url": "http://dev.w3.org/csswg/selectors-4/",
12         "keywords": ["css selectors", "selectors"],
13         "category": "css"
14     },
15     {
16         "name": "DOM",
17         "url": "https://dom.spec.whatwg.org",
18         "keywords": ["dom", "dom4"],
19         "category": "html"
20     },
21     {
22         "name": "HTML5",
23         "url": "https://html.spec.whatwg.org",
24         "keywords": ["html", "html5", "html5.1"],
25         "category": "html"
26     },
27     {
28         "name": "Streams",
29         "url": "https://streams.spec.whatwg.org",
30         "keywords": ["streams api"],
31         "category": "webapps"
32     }
33     ],
34
35     "features": [
36     {
37         "name": "CSS Selector :any-link",
38         "status": {
39             "status": "Done",
40             "enabled-by-default": true
41         },
42         "url": "http://dev.w3.org/csswg/selectors-4/#the-any-link-pseudo",
43         "specification": "CSS Selectors Level 4",
44         "description": "The pseudo class :any-link matches any element that would match :link or :visisted.",
45         "comment": "A prefix version :-webkit-any-link has been available for a while but it was not 100% compliant to the specification."
46     },
47     {
48         "name": "CSS Selector :lang() level 4",
49         "status": {
50             "status": "Done",
51             "enabled-by-default": true
52         },
53         "url": "http://dev.w3.org/csswg/selectors-4/#the-lang-pseudo",
54         "specification": "CSS Selectors Level 4",
55         "description": "The selector :lang() is extended in level 4 to support a list of language range, each range can contain a wildcard. For example: p:lang(\"*-be\", \"en\")."
56     },
57     {
58         "name": "CSS Selector :matches()",
59         "status": {
60             "status": "Done",
61             "enabled-by-default": true
62         },
63         "url": "http://dev.w3.org/csswg/selectors-4/#matches",
64         "specification": "CSS Selectors Level 4",
65         "description": "The selector :matches() takes a selector list as argument and matches an element if any of them matches (e.g. :matches(article > section, #target)). When used for styling, the specificity of :matches() is the higest specificity of all selectors in the selector list.",
66         "comment": "The pseudo classes <em>:visited</em> and <em>:link</em> are not supported inside :matches()."
67     },
68     {
69         "name": "CSS Selector :not() level 4",
70         "status": {
71             "status": "Done",
72             "enabled-by-default": true
73         },
74         "url": "http://dev.w3.org/csswg/selectors-4/#negation",
75         "specification": "CSS Selectors Level 4",
76         "description": "The selector :not() in level 4 supports full selector lists as argument. For example: :not(:any-link >> img, :any-link >> picture).",
77         "comment": "The pseudo classes <em>:visited</em> and <em>:link</em> are not supported inside :not()."
78     },
79     {
80         "name": "CSS Selector :nth-child(An+B of selector list) and :nth-last-child(An+B of selector list)",
81         "status": {
82             "status": "Done",
83             "enabled-by-default": true
84         },
85         "url": "http://dev.w3.org/csswg/selectors-4/#the-nth-child-pseudo",
86         "specification": "CSS Selectors Level 4",
87         "description": "The pseudo classes :nth-child() and :nth-last-child() now supports a selector list that filters what to count. For example: \":nth-child(even of .visible)\".",
88         "comment": "The pseudo classes <em>:visited</em> and <em>:link</em> are not supported inside :nth-child() and :nth-last-child()."
89     },
90     {
91         "name": "CSS Selector :placeholder-shown",
92         "status": {
93             "status": "Done",
94             "enabled-by-default": true
95         },
96         "url": "http://dev.w3.org/csswg/selectors-4/#placeholder",
97         "specification": "CSS Selectors Level 4",
98         "description": "The selector :placeholder-shown matches any input element that has a visible placeholder.",
99         "comment": "Styling the placeholder can be done through the WebKit pseudo-element \"::-webkit-input-placeholder\"."
100     },
101     {
102         "name": "Case-insensitive attribute selectors",
103         "status": {
104             "status": "Done",
105             "enabled-by-default": true
106         },
107         "url": "http://dev.w3.org/csswg/selectors-4/#attribute-case",
108         "specification": "CSS Selectors Level 4",
109         "description": "Any attribute selector that test a value can take a flag \"i\" to use case insensitive checks. For example: input[type=number i] test the value \"number\" case-insensitively."
110     },
111     {
112         "name": "Element.closest()",
113         "status": {
114             "status": "Done",
115             "enabled-by-default": true
116         },
117         "url": "https://dom.spec.whatwg.org/#dom-element-closest",
118         "documentation-url": "https://developer.mozilla.org/en-US/docs/Web/API/Element/closest",
119         "webkit-url": "https://bugs.webkit.org/show_bug.cgi?id=137418",
120         "specification": "DOM",
121         "description": "Find the closest ancestor matching the selector passed as argument. The element itself is returned if it matches the selector."
122     },
123     {
124         "name": "Force Click Events",
125         "status": {
126             "status": "Prototyping",
127             "enabled-by-default": true
128         },
129         "webkit-url": "https://bugs.webkit.org/show_bug.cgi?id=142836",
130         "description": "Provide the events necessary to handle force click events in the page, overriding the default behavior."
131     },
132     {
133         "name": "Interaction Media Features (pointer, hover, any-pointer, any-hover)",
134         "status": {
135             "status": "Done",
136             "enabled-by-default": true
137         },
138         "url": "http://dev.w3.org/csswg/mediaqueries-4/#mf-interaction",
139         "specification": "CSS Media Queries Level 4",
140         "description": "The \"pointer\" media defines how percise the pointing device is. The \"hover\" media defines the ability of the poiting device to hover elements."
141     },
142     {
143         "name": "Navigator.hardwareConcurrency",
144         "status": {
145             "status": "Done",
146             "enabled-by-default": true
147         },
148         "url": "https://wiki.whatwg.org/wiki/Navigator_HW_Concurrency",
149         "webkit-url": "http://trac.webkit.org/changeset/169017",
150         "description": "Navigator.hardwareConcurrency provides the total number of logical processors available to the user agent."
151     },
152     {
153         "name": "Readable Streams",
154         "status": {
155             "status": "In Development",
156             "enabled-by-default": true
157         },
158         "url": "https://streams.spec.whatwg.org/#rs",
159         "webkit-url": "https://bugs.webkit.org/show_bug.cgi?id=138967",
160         "specification": "Streams",
161         "comment": "The ReadableStream and ReadableStreamReader interfaces are available but not functional."
162     }
163     ]
164 }