webidl 0.1.0 → 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile +5 -0
- data/{README.rdoc → README.md} +12 -6
- data/lib/webidl.rb +3 -1
- data/lib/webidl/ast/sequence.rb +19 -0
- data/lib/webidl/ast/type.rb +15 -4
- data/lib/webidl/parse_tree/sequence_type.rb +11 -0
- data/lib/webidl/parse_tree/type.rb +4 -1
- data/lib/webidl/parse_tree/type_suffix.rb +19 -0
- data/lib/webidl/parser/idl.treetop +36 -16
- data/lib/webidl/version.rb +1 -1
- data/spec/fixtures/html5.idl +422 -384
- metadata +7 -7
- data/lib/webidl/parse_tree/nullable_type.rb +0 -11
- data/lib/webidl/parser/idl.rb +0 -5731
data/Gemfile
CHANGED
data/{README.rdoc → README.md}
RENAMED
@@ -1,26 +1,31 @@
|
|
1
|
-
|
1
|
+
webidl
|
2
|
+
======
|
2
3
|
|
3
4
|
This gem provides a pure-ruby parser and code generator for Web IDL, an interface description language for interfaces intended to be implemented in web browsers.
|
4
5
|
The code generation will be used to generate part of the implementation of Watir 2.0, backed by WebDriver.
|
5
6
|
|
6
|
-
|
7
|
+
Problems
|
8
|
+
--------
|
7
9
|
|
8
10
|
The code generation could be improved a lot - a lot of the data in the IDL is just ignored. I don't need anything more at the moment, but it should be easy to complete it if anyone needs to.
|
9
11
|
|
10
12
|
The parser rules for ExtendedAttribute is not exactly like the grammar from the Web IDL spec, since I ran into infinite recursion issues and don't have the Treetop-fu to figure them out.
|
11
13
|
So far this hasn't led to any problems - the parser does parse the IDLs parts of the current HTML5 spec just fine.
|
12
14
|
|
13
|
-
|
15
|
+
Development tips
|
16
|
+
----------------
|
14
17
|
|
15
18
|
While working on the grammar, delete the compiled parser (lib/webidl/parser/idl.rb) and make sure you do not have the webidl gem installed. When finished, compile the parser with `rake parser:compile`.
|
16
19
|
|
17
|
-
|
20
|
+
See also
|
21
|
+
--------
|
18
22
|
|
19
23
|
* http://dev.w3.org/2006/webapi/WebIDL/
|
20
24
|
* http://dev.w3.org/2006/webapi/WebIDL/#idl-grammar
|
21
25
|
* http://dev.w3.org/html5/spec/Overview.html
|
22
26
|
|
23
|
-
|
27
|
+
Note on Patches/Pull Requests
|
28
|
+
-----------------------------
|
24
29
|
|
25
30
|
* Fork the project.
|
26
31
|
* Make your feature addition or bug fix.
|
@@ -30,6 +35,7 @@ While working on the grammar, delete the compiled parser (lib/webidl/parser/idl.
|
|
30
35
|
(if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
|
31
36
|
* Send me a pull request. Bonus points for topic branches.
|
32
37
|
|
33
|
-
|
38
|
+
Copyright
|
39
|
+
---------
|
34
40
|
|
35
41
|
Copyright (c) 2009-2011 Jari Bakken. See LICENSE for details.
|
data/lib/webidl.rb
CHANGED
@@ -15,8 +15,9 @@ require "webidl/parse_tree/argument_list"
|
|
15
15
|
require "webidl/parse_tree/extended_attributes"
|
16
16
|
require "webidl/parse_tree/relative_scoped_name"
|
17
17
|
require "webidl/parse_tree/absolute_scoped_name"
|
18
|
+
require "webidl/parse_tree/sequence_type"
|
19
|
+
require "webidl/parse_tree/type_suffix"
|
18
20
|
require "webidl/parse_tree/type"
|
19
|
-
require "webidl/parse_tree/nullable_type"
|
20
21
|
require "webidl/parse_tree/interface_members"
|
21
22
|
require "webidl/parse_tree/operation"
|
22
23
|
require "webidl/parse_tree/const"
|
@@ -37,6 +38,7 @@ require "webidl/ast/type"
|
|
37
38
|
require "webidl/ast/scoped_name"
|
38
39
|
require "webidl/ast/operation"
|
39
40
|
require "webidl/ast/const"
|
41
|
+
require "webidl/ast/sequence"
|
40
42
|
require "webidl/ast/exception"
|
41
43
|
require "webidl/ast/attribute"
|
42
44
|
require "webidl/ast/field"
|
@@ -0,0 +1,19 @@
|
|
1
|
+
module WebIDL
|
2
|
+
module Ast
|
3
|
+
class Sequence < Node
|
4
|
+
attr_reader :type
|
5
|
+
|
6
|
+
def initialize(parent, type, opts = {})
|
7
|
+
super(parent)
|
8
|
+
|
9
|
+
@type = type
|
10
|
+
@nullable = !!opts[:nullable]
|
11
|
+
end
|
12
|
+
|
13
|
+
def nullable?
|
14
|
+
@nullable
|
15
|
+
end
|
16
|
+
|
17
|
+
end # Sequence
|
18
|
+
end # Ast
|
19
|
+
end # WebIDL
|
data/lib/webidl/ast/type.rb
CHANGED
@@ -2,21 +2,32 @@ module WebIDL
|
|
2
2
|
module Ast
|
3
3
|
class Type < Node
|
4
4
|
|
5
|
-
attr_reader :name
|
6
|
-
|
7
5
|
def initialize(parent, name, opts = {})
|
8
6
|
super(parent)
|
9
7
|
|
10
8
|
@name = camel_case_type(name.strip).to_sym
|
11
9
|
@nullable = !!opts[:nullable]
|
10
|
+
@array = !!opts[:array]
|
12
11
|
end
|
13
12
|
|
14
13
|
def nullable?
|
15
14
|
@nullable
|
16
15
|
end
|
17
16
|
|
18
|
-
def array
|
19
|
-
@
|
17
|
+
def array?
|
18
|
+
@array
|
19
|
+
end
|
20
|
+
|
21
|
+
def array=(bool)
|
22
|
+
@array = bool
|
23
|
+
end
|
24
|
+
|
25
|
+
def nullable=(bool)
|
26
|
+
@nullable = bool
|
27
|
+
end
|
28
|
+
|
29
|
+
def name
|
30
|
+
(array? ? "#{@name}Array" : @name).to_sym
|
20
31
|
end
|
21
32
|
|
22
33
|
private
|
@@ -0,0 +1,19 @@
|
|
1
|
+
module WebIDL
|
2
|
+
module ParseTree
|
3
|
+
class TypeSuffix < Treetop::Runtime::SyntaxNode
|
4
|
+
|
5
|
+
def apply(type)
|
6
|
+
if respond_to?(:array) && array.any?
|
7
|
+
type.array = true
|
8
|
+
end
|
9
|
+
|
10
|
+
if respond_to?(:null) && null.any?
|
11
|
+
type.nullable = true
|
12
|
+
end
|
13
|
+
|
14
|
+
raise NotImplementedError, "TypeSuffix + TypeSuffix" if suffix.any?
|
15
|
+
end
|
16
|
+
|
17
|
+
end # TypeSuffix
|
18
|
+
end # ParseTree
|
19
|
+
end # WebIDL
|
@@ -276,25 +276,45 @@ module WebIDL
|
|
276
276
|
end
|
277
277
|
|
278
278
|
rule Type
|
279
|
-
type:
|
280
|
-
/ ScopedName
|
281
|
-
/ "any" # not sure why these two are here, since
|
282
|
-
/ "object" # they will be caught by ScopedName anyway..
|
283
|
-
) array:Array <ParseTree::Type>
|
279
|
+
("sequence" ws "<" ws type:Type ws ">" null:Null <ParseTree::SequenceType> / AttributeType)
|
284
280
|
end
|
285
281
|
|
286
|
-
|
287
|
-
|
288
|
-
|
282
|
+
rule Null
|
283
|
+
"?"?
|
284
|
+
end
|
285
|
+
|
286
|
+
rule AttributeType
|
287
|
+
type:PrimitiveOrStringType suffix:TypeSuffix <ParseTree::Type>
|
288
|
+
/ type:ScopedName suffix:TypeSuffix <ParseTree::Type>
|
289
|
+
/ type:"object" suffix:TypeSuffix <ParseTree::Type>
|
290
|
+
/ type:"Date" suffix:TypeSuffix <ParseTree::Type>
|
291
|
+
/ type:"any" suffix:TypeSuffixStartingWithArray <ParseTree::Type>
|
292
|
+
end
|
293
|
+
|
294
|
+
# added: cannot be followed by a NonSpace character, since e.g. DOMStringMap, DOMStringList or other ScopedNames would break parsing
|
295
|
+
rule PrimitiveOrStringType
|
296
|
+
(UnsignedIntegerType
|
297
|
+
/ "boolean" !NonSpace
|
298
|
+
/ "byte" !NonSpace
|
299
|
+
/ "octet" !NonSpace
|
300
|
+
/ "float" !NonSpace
|
301
|
+
/ "double" !NonSpace
|
302
|
+
/ "DOMString" !NonSpace) {
|
303
|
+
def build(parent)
|
304
|
+
Ast::Type.new(parent, text_value)
|
305
|
+
end
|
306
|
+
}
|
307
|
+
end
|
308
|
+
|
309
|
+
rule TypeSuffix
|
310
|
+
(
|
311
|
+
array:("[" ws "]") suffix:TypeSuffix <ParseTree::TypeSuffix>
|
312
|
+
/ null:"?" suffix:TypeSuffixStartingWithArray <ParseTree::TypeSuffix>
|
313
|
+
)?
|
314
|
+
end
|
289
315
|
|
290
|
-
rule
|
291
|
-
|
292
|
-
/ type:"boolean" null:Nullable !NonSpace <ParseTree::NullableType>
|
293
|
-
/ type:"octet" null:Nullable !NonSpace <ParseTree::NullableType>
|
294
|
-
/ type:"float" null:Nullable !NonSpace <ParseTree::NullableType>
|
295
|
-
/ type:"double" null:Nullable !NonSpace <ParseTree::NullableType>
|
296
|
-
/ type:"DOMString" null:Nullable !NonSpace <ParseTree::NullableType>
|
297
|
-
/ type:"sequence" ws "<" ws Type ws ">" null:Nullable !NonSpace <ParseTree::NullableType>
|
316
|
+
rule TypeSuffixStartingWithArray
|
317
|
+
(array:("[" ws "]") ws suffix:TypeSuffix <ParseTree::TypeSuffix>)?
|
298
318
|
end
|
299
319
|
|
300
320
|
rule UnsignedIntegerType
|
data/lib/webidl/version.rb
CHANGED
data/spec/fixtures/html5.idl
CHANGED
@@ -1,18 +1,18 @@
|
|
1
1
|
interface HTMLCollection {
|
2
2
|
readonly attribute unsigned long length;
|
3
|
-
caller getter Element item(in unsigned long index);
|
4
|
-
caller getter object namedItem(in DOMString name); // only returns Element
|
3
|
+
caller getter Element? item(in unsigned long index);
|
4
|
+
caller getter object? namedItem(in DOMString name); // only returns Element
|
5
5
|
};
|
6
6
|
|
7
7
|
interface HTMLAllCollection : HTMLCollection {
|
8
8
|
// inherits length and item()
|
9
|
-
caller getter object namedItem(in DOMString name); // overrides inherited namedItem()
|
9
|
+
caller getter object? namedItem(in DOMString name); // overrides inherited namedItem()
|
10
10
|
HTMLAllCollection tags(in DOMString tagName);
|
11
11
|
};
|
12
12
|
|
13
13
|
interface HTMLFormControlsCollection : HTMLCollection {
|
14
14
|
// inherits length and item()
|
15
|
-
caller getter object namedItem(in DOMString name); // overrides inherited namedItem()
|
15
|
+
caller getter object? namedItem(in DOMString name); // overrides inherited namedItem()
|
16
16
|
};
|
17
17
|
|
18
18
|
interface RadioNodeList : NodeList {
|
@@ -22,8 +22,8 @@ interface RadioNodeList : NodeList {
|
|
22
22
|
interface HTMLOptionsCollection : HTMLCollection {
|
23
23
|
// inherits item()
|
24
24
|
attribute unsigned long length; // overrides inherited length
|
25
|
-
caller getter object namedItem(in DOMString name); // overrides inherited namedItem()
|
26
|
-
void add(in HTMLElement element, in optional HTMLElement before);
|
25
|
+
caller getter object? namedItem(in DOMString name); // overrides inherited namedItem()
|
26
|
+
void add(in HTMLElement element, in optional HTMLElement? before);
|
27
27
|
void add(in HTMLElement element, in long before);
|
28
28
|
void remove(in long index);
|
29
29
|
attribute long selectedIndex;
|
@@ -31,19 +31,19 @@ interface HTMLOptionsCollection : HTMLCollection {
|
|
31
31
|
|
32
32
|
interface HTMLPropertiesCollection : HTMLCollection {
|
33
33
|
// inherits length and item()
|
34
|
-
caller getter PropertyNodeList namedItem(in DOMString name); // overrides inherited namedItem()
|
34
|
+
caller getter PropertyNodeList? namedItem(in DOMString name); // overrides inherited namedItem()
|
35
35
|
readonly attribute DOMStringList names;
|
36
36
|
};
|
37
37
|
|
38
38
|
typedef sequence<any> PropertyValueArray;
|
39
39
|
|
40
40
|
interface PropertyNodeList : NodeList {
|
41
|
-
|
41
|
+
PropertyValueArray getValues();
|
42
42
|
};
|
43
43
|
|
44
44
|
interface DOMTokenList {
|
45
45
|
readonly attribute unsigned long length;
|
46
|
-
getter DOMString item(in unsigned long index);
|
46
|
+
getter DOMString? item(in unsigned long index);
|
47
47
|
boolean contains(in DOMString token);
|
48
48
|
void add(in DOMString token);
|
49
49
|
void remove(in DOMString token);
|
@@ -55,6 +55,9 @@ interface DOMSettableTokenList : DOMTokenList {
|
|
55
55
|
attribute DOMString value;
|
56
56
|
};
|
57
57
|
|
58
|
+
[NoInterfaceObject]
|
59
|
+
interface Transferable { };
|
60
|
+
|
58
61
|
interface DOMStringMap {
|
59
62
|
getter DOMString (in DOMString name);
|
60
63
|
setter void (in DOMString name, in DOMString value);
|
@@ -78,7 +81,7 @@ interface DOMElementMap {
|
|
78
81
|
[OverrideBuiltins]
|
79
82
|
interface HTMLDocument {
|
80
83
|
// resource metadata management
|
81
|
-
[PutForwards=href] readonly attribute Location location;
|
84
|
+
[PutForwards=href] readonly attribute Location? location;
|
82
85
|
readonly attribute DOMString URL;
|
83
86
|
attribute DOMString domain;
|
84
87
|
readonly attribute DOMString referrer;
|
@@ -94,8 +97,8 @@ interface HTMLDocument {
|
|
94
97
|
getter any (in DOMString name);
|
95
98
|
attribute DOMString title;
|
96
99
|
attribute DOMString dir;
|
97
|
-
attribute HTMLElement body;
|
98
|
-
readonly attribute HTMLHeadElement head;
|
100
|
+
attribute HTMLElement? body;
|
101
|
+
readonly attribute HTMLHeadElement? head;
|
99
102
|
readonly attribute HTMLCollection images;
|
100
103
|
readonly attribute HTMLCollection embeds;
|
101
104
|
readonly attribute HTMLCollection plugins;
|
@@ -104,7 +107,7 @@ interface HTMLDocument {
|
|
104
107
|
readonly attribute HTMLCollection scripts;
|
105
108
|
NodeList getElementsByName(in DOMString elementName);
|
106
109
|
NodeList getElementsByClassName(in DOMString classNames);
|
107
|
-
NodeList getItems(in optional DOMString typeNames); // microdata
|
110
|
+
NodeList getItems(in optional DOMString typeNames); // microdata
|
108
111
|
readonly attribute DOMElementMap cssElementMap;
|
109
112
|
|
110
113
|
// dynamic markup insertion
|
@@ -116,8 +119,8 @@ interface HTMLDocument {
|
|
116
119
|
void writeln(in DOMString... text);
|
117
120
|
|
118
121
|
// user interaction
|
119
|
-
readonly attribute WindowProxy defaultView;
|
120
|
-
readonly attribute Element activeElement;
|
122
|
+
readonly attribute WindowProxy? defaultView;
|
123
|
+
readonly attribute Element? activeElement;
|
121
124
|
boolean hasFocus();
|
122
125
|
attribute DOMString designMode;
|
123
126
|
boolean execCommand(in DOMString commandId);
|
@@ -131,62 +134,60 @@ interface HTMLDocument {
|
|
131
134
|
readonly attribute HTMLCollection commands;
|
132
135
|
|
133
136
|
// event handler IDL attributes
|
134
|
-
attribute Function onabort;
|
135
|
-
attribute Function onblur;
|
136
|
-
attribute Function oncanplay;
|
137
|
-
attribute Function oncanplaythrough;
|
138
|
-
attribute Function onchange;
|
139
|
-
attribute Function onclick;
|
140
|
-
attribute Function oncontextmenu;
|
141
|
-
|
142
|
-
attribute Function
|
143
|
-
|
144
|
-
attribute Function
|
145
|
-
attribute Function
|
146
|
-
attribute Function
|
147
|
-
attribute Function
|
148
|
-
attribute Function
|
149
|
-
attribute Function
|
150
|
-
attribute Function
|
151
|
-
attribute Function
|
152
|
-
attribute Function
|
153
|
-
attribute Function
|
154
|
-
attribute Function
|
155
|
-
attribute Function
|
156
|
-
attribute Function
|
157
|
-
attribute Function
|
158
|
-
attribute Function
|
159
|
-
attribute Function
|
160
|
-
attribute Function
|
161
|
-
attribute Function
|
162
|
-
attribute Function
|
163
|
-
attribute Function
|
164
|
-
attribute Function
|
165
|
-
attribute Function
|
166
|
-
attribute Function
|
167
|
-
attribute Function
|
168
|
-
attribute Function
|
169
|
-
attribute Function
|
170
|
-
attribute Function
|
171
|
-
attribute Function
|
172
|
-
attribute Function
|
173
|
-
attribute Function
|
174
|
-
attribute Function
|
175
|
-
attribute Function
|
176
|
-
attribute Function
|
177
|
-
attribute Function
|
178
|
-
attribute Function
|
179
|
-
attribute Function
|
180
|
-
attribute Function
|
181
|
-
attribute Function
|
182
|
-
attribute Function
|
183
|
-
attribute Function
|
184
|
-
attribute Function
|
185
|
-
attribute Function
|
186
|
-
attribute Function
|
187
|
-
attribute Function
|
188
|
-
attribute Function onvolumechange;
|
189
|
-
attribute Function onwaiting;
|
137
|
+
attribute Function? onabort;
|
138
|
+
attribute Function? onblur;
|
139
|
+
attribute Function? oncanplay;
|
140
|
+
attribute Function? oncanplaythrough;
|
141
|
+
attribute Function? onchange;
|
142
|
+
attribute Function? onclick;
|
143
|
+
attribute Function? oncontextmenu;
|
144
|
+
attribute Function? oncuechange;
|
145
|
+
attribute Function? ondblclick;
|
146
|
+
attribute Function? ondrag;
|
147
|
+
attribute Function? ondragend;
|
148
|
+
attribute Function? ondragenter;
|
149
|
+
attribute Function? ondragleave;
|
150
|
+
attribute Function? ondragover;
|
151
|
+
attribute Function? ondragstart;
|
152
|
+
attribute Function? ondrop;
|
153
|
+
attribute Function? ondurationchange;
|
154
|
+
attribute Function? onemptied;
|
155
|
+
attribute Function? onended;
|
156
|
+
attribute Function? onerror;
|
157
|
+
attribute Function? onfocus;
|
158
|
+
attribute Function? oninput;
|
159
|
+
attribute Function? oninvalid;
|
160
|
+
attribute Function? onkeydown;
|
161
|
+
attribute Function? onkeypress;
|
162
|
+
attribute Function? onkeyup;
|
163
|
+
attribute Function? onload;
|
164
|
+
attribute Function? onloadeddata;
|
165
|
+
attribute Function? onloadedmetadata;
|
166
|
+
attribute Function? onloadstart;
|
167
|
+
attribute Function? onmousedown;
|
168
|
+
attribute Function? onmousemove;
|
169
|
+
attribute Function? onmouseout;
|
170
|
+
attribute Function? onmouseover;
|
171
|
+
attribute Function? onmouseup;
|
172
|
+
attribute Function? onmousewheel;
|
173
|
+
attribute Function? onpause;
|
174
|
+
attribute Function? onplay;
|
175
|
+
attribute Function? onplaying;
|
176
|
+
attribute Function? onprogress;
|
177
|
+
attribute Function? onratechange;
|
178
|
+
attribute Function? onreadystatechange;
|
179
|
+
attribute Function? onreset;
|
180
|
+
attribute Function? onscroll;
|
181
|
+
attribute Function? onseeked;
|
182
|
+
attribute Function? onseeking;
|
183
|
+
attribute Function? onselect;
|
184
|
+
attribute Function? onshow;
|
185
|
+
attribute Function? onstalled;
|
186
|
+
attribute Function? onsubmit;
|
187
|
+
attribute Function? onsuspend;
|
188
|
+
attribute Function? ontimeupdate;
|
189
|
+
attribute Function? onvolumechange;
|
190
|
+
attribute Function? onwaiting;
|
190
191
|
};
|
191
192
|
Document implements HTMLDocument;
|
192
193
|
|
@@ -219,7 +220,7 @@ interface HTMLElement : Element {
|
|
219
220
|
readonly attribute DOMTokenList classList;
|
220
221
|
readonly attribute DOMStringMap dataset;
|
221
222
|
|
222
|
-
// microdata
|
223
|
+
// microdata
|
223
224
|
attribute boolean itemScope;
|
224
225
|
attribute DOMString itemType;
|
225
226
|
attribute DOMString itemId;
|
@@ -237,79 +238,78 @@ interface HTMLElement : Element {
|
|
237
238
|
attribute DOMString accessKey;
|
238
239
|
readonly attribute DOMString accessKeyLabel;
|
239
240
|
attribute boolean draggable;
|
240
|
-
[PutForwards=value] attribute DOMSettableTokenList dropzone;
|
241
|
+
[PutForwards=value] readonly attribute DOMSettableTokenList dropzone;
|
241
242
|
attribute DOMString contentEditable;
|
242
243
|
readonly attribute boolean isContentEditable;
|
243
|
-
attribute HTMLMenuElement contextMenu;
|
244
|
+
attribute HTMLMenuElement? contextMenu;
|
244
245
|
attribute boolean spellcheck;
|
245
246
|
|
246
247
|
// command API
|
247
|
-
readonly attribute DOMString commandType;
|
248
|
-
readonly attribute DOMString
|
249
|
-
readonly attribute DOMString
|
250
|
-
readonly attribute boolean
|
251
|
-
readonly attribute boolean
|
248
|
+
readonly attribute DOMString? commandType;
|
249
|
+
readonly attribute DOMString? commandLabel;
|
250
|
+
readonly attribute DOMString? commandIcon;
|
251
|
+
readonly attribute boolean? commandHidden;
|
252
|
+
readonly attribute boolean? commandDisabled;
|
253
|
+
readonly attribute boolean? commandChecked;
|
252
254
|
|
253
255
|
// styling
|
254
256
|
readonly attribute CSSStyleDeclaration style;
|
255
257
|
|
256
258
|
// event handler IDL attributes
|
257
|
-
attribute Function onabort;
|
258
|
-
attribute Function onblur;
|
259
|
-
attribute Function oncanplay;
|
260
|
-
attribute Function oncanplaythrough;
|
261
|
-
attribute Function onchange;
|
262
|
-
attribute Function onclick;
|
263
|
-
attribute Function oncontextmenu;
|
264
|
-
|
265
|
-
attribute Function
|
266
|
-
|
267
|
-
attribute Function
|
268
|
-
attribute Function
|
269
|
-
attribute Function
|
270
|
-
attribute Function
|
271
|
-
attribute Function
|
272
|
-
attribute Function
|
273
|
-
attribute Function
|
274
|
-
attribute Function
|
275
|
-
attribute Function
|
276
|
-
attribute Function
|
277
|
-
attribute Function
|
278
|
-
attribute Function
|
279
|
-
attribute Function
|
280
|
-
attribute Function
|
281
|
-
attribute Function
|
282
|
-
attribute Function
|
283
|
-
attribute Function
|
284
|
-
attribute Function
|
285
|
-
attribute Function
|
286
|
-
attribute Function
|
287
|
-
attribute Function
|
288
|
-
attribute Function
|
289
|
-
attribute Function
|
290
|
-
attribute Function
|
291
|
-
attribute Function
|
292
|
-
attribute Function
|
293
|
-
attribute Function
|
294
|
-
attribute Function
|
295
|
-
attribute Function
|
296
|
-
attribute Function
|
297
|
-
attribute Function
|
298
|
-
attribute Function
|
299
|
-
attribute Function
|
300
|
-
attribute Function
|
301
|
-
attribute Function
|
302
|
-
attribute Function
|
303
|
-
attribute Function
|
304
|
-
attribute Function
|
305
|
-
attribute Function
|
306
|
-
attribute Function
|
307
|
-
attribute Function
|
308
|
-
attribute Function
|
309
|
-
attribute Function
|
310
|
-
attribute Function
|
311
|
-
attribute Function onvolumechange;
|
312
|
-
attribute Function onwaiting;
|
259
|
+
attribute Function? onabort;
|
260
|
+
attribute Function? onblur;
|
261
|
+
attribute Function? oncanplay;
|
262
|
+
attribute Function? oncanplaythrough;
|
263
|
+
attribute Function? onchange;
|
264
|
+
attribute Function? onclick;
|
265
|
+
attribute Function? oncontextmenu;
|
266
|
+
attribute Function? oncuechange;
|
267
|
+
attribute Function? ondblclick;
|
268
|
+
attribute Function? ondrag;
|
269
|
+
attribute Function? ondragend;
|
270
|
+
attribute Function? ondragenter;
|
271
|
+
attribute Function? ondragleave;
|
272
|
+
attribute Function? ondragover;
|
273
|
+
attribute Function? ondragstart;
|
274
|
+
attribute Function? ondrop;
|
275
|
+
attribute Function? ondurationchange;
|
276
|
+
attribute Function? onemptied;
|
277
|
+
attribute Function? onended;
|
278
|
+
attribute Function? onerror;
|
279
|
+
attribute Function? onfocus;
|
280
|
+
attribute Function? oninput;
|
281
|
+
attribute Function? oninvalid;
|
282
|
+
attribute Function? onkeydown;
|
283
|
+
attribute Function? onkeypress;
|
284
|
+
attribute Function? onkeyup;
|
285
|
+
attribute Function? onload;
|
286
|
+
attribute Function? onloadeddata;
|
287
|
+
attribute Function? onloadedmetadata;
|
288
|
+
attribute Function? onloadstart;
|
289
|
+
attribute Function? onmousedown;
|
290
|
+
attribute Function? onmousemove;
|
291
|
+
attribute Function? onmouseout;
|
292
|
+
attribute Function? onmouseover;
|
293
|
+
attribute Function? onmouseup;
|
294
|
+
attribute Function? onmousewheel;
|
295
|
+
attribute Function? onpause;
|
296
|
+
attribute Function? onplay;
|
297
|
+
attribute Function? onplaying;
|
298
|
+
attribute Function? onprogress;
|
299
|
+
attribute Function? onratechange;
|
300
|
+
attribute Function? onreadystatechange;
|
301
|
+
attribute Function? onreset;
|
302
|
+
attribute Function? onscroll;
|
303
|
+
attribute Function? onseeked;
|
304
|
+
attribute Function? onseeking;
|
305
|
+
attribute Function? onselect;
|
306
|
+
attribute Function? onshow;
|
307
|
+
attribute Function? onstalled;
|
308
|
+
attribute Function? onsubmit;
|
309
|
+
attribute Function? onsuspend;
|
310
|
+
attribute Function? ontimeupdate;
|
311
|
+
attribute Function? onvolumechange;
|
312
|
+
attribute Function? onwaiting;
|
313
313
|
};
|
314
314
|
|
315
315
|
interface HTMLUnknownElement : HTMLElement { };
|
@@ -363,26 +363,26 @@ interface HTMLScriptElement : HTMLElement {
|
|
363
363
|
};
|
364
364
|
|
365
365
|
interface HTMLBodyElement : HTMLElement {
|
366
|
-
attribute Function onafterprint;
|
367
|
-
attribute Function onbeforeprint;
|
368
|
-
attribute Function onbeforeunload;
|
369
|
-
attribute Function onblur;
|
370
|
-
attribute Function onerror;
|
371
|
-
attribute Function onfocus;
|
372
|
-
attribute Function onhashchange;
|
373
|
-
attribute Function onload;
|
374
|
-
attribute Function onmessage;
|
375
|
-
attribute Function onoffline;
|
376
|
-
attribute Function ononline;
|
377
|
-
attribute Function onpopstate;
|
378
|
-
attribute Function onpagehide;
|
379
|
-
attribute Function onpageshow;
|
380
|
-
attribute Function onredo;
|
381
|
-
attribute Function onresize;
|
382
|
-
attribute Function onscroll;
|
383
|
-
attribute Function onstorage;
|
384
|
-
attribute Function onundo;
|
385
|
-
attribute Function onunload;
|
366
|
+
attribute Function? onafterprint;
|
367
|
+
attribute Function? onbeforeprint;
|
368
|
+
attribute Function? onbeforeunload;
|
369
|
+
attribute Function? onblur;
|
370
|
+
attribute Function? onerror;
|
371
|
+
attribute Function? onfocus;
|
372
|
+
attribute Function? onhashchange;
|
373
|
+
attribute Function? onload;
|
374
|
+
attribute Function? onmessage;
|
375
|
+
attribute Function? onoffline;
|
376
|
+
attribute Function? ononline;
|
377
|
+
attribute Function? onpopstate;
|
378
|
+
attribute Function? onpagehide;
|
379
|
+
attribute Function? onpageshow;
|
380
|
+
attribute Function? onredo;
|
381
|
+
attribute Function? onresize;
|
382
|
+
attribute Function? onscroll;
|
383
|
+
attribute Function? onstorage;
|
384
|
+
attribute Function? onundo;
|
385
|
+
attribute Function? onunload;
|
386
386
|
};
|
387
387
|
|
388
388
|
interface HTMLHeadingElement : HTMLElement {};
|
@@ -440,7 +440,7 @@ interface HTMLAnchorElement : HTMLElement {
|
|
440
440
|
interface HTMLTimeElement : HTMLElement {
|
441
441
|
attribute DOMString dateTime;
|
442
442
|
attribute boolean pubDate;
|
443
|
-
readonly attribute Date valueAsDate;
|
443
|
+
readonly attribute Date? valueAsDate;
|
444
444
|
};
|
445
445
|
|
446
446
|
interface HTMLSpanElement : HTMLElement {};
|
@@ -458,6 +458,7 @@ interface HTMLModElement : HTMLElement {
|
|
458
458
|
interface HTMLImageElement : HTMLElement {
|
459
459
|
attribute DOMString alt;
|
460
460
|
attribute DOMString src;
|
461
|
+
attribute DOMString crossOrigin;
|
461
462
|
attribute DOMString useMap;
|
462
463
|
attribute boolean isMap;
|
463
464
|
attribute unsigned long width;
|
@@ -475,8 +476,8 @@ interface HTMLIFrameElement : HTMLElement {
|
|
475
476
|
attribute boolean seamless;
|
476
477
|
attribute DOMString width;
|
477
478
|
attribute DOMString height;
|
478
|
-
readonly attribute Document contentDocument;
|
479
|
-
readonly attribute WindowProxy contentWindow;
|
479
|
+
readonly attribute Document? contentDocument;
|
480
|
+
readonly attribute WindowProxy? contentWindow;
|
480
481
|
};
|
481
482
|
|
482
483
|
interface HTMLEmbedElement : HTMLElement {
|
@@ -489,13 +490,14 @@ interface HTMLEmbedElement : HTMLElement {
|
|
489
490
|
interface HTMLObjectElement : HTMLElement {
|
490
491
|
attribute DOMString data;
|
491
492
|
attribute DOMString type;
|
493
|
+
attribute boolean typeMustMatch;
|
492
494
|
attribute DOMString name;
|
493
495
|
attribute DOMString useMap;
|
494
|
-
readonly attribute HTMLFormElement form;
|
496
|
+
readonly attribute HTMLFormElement? form;
|
495
497
|
attribute DOMString width;
|
496
498
|
attribute DOMString height;
|
497
|
-
readonly attribute Document contentDocument;
|
498
|
-
readonly attribute WindowProxy contentWindow;
|
499
|
+
readonly attribute Document? contentDocument;
|
500
|
+
readonly attribute WindowProxy? contentWindow;
|
499
501
|
|
500
502
|
readonly attribute boolean willValidate;
|
501
503
|
readonly attribute ValidityState validity;
|
@@ -515,7 +517,6 @@ interface HTMLVideoElement : HTMLMediaElement {
|
|
515
517
|
readonly attribute unsigned long videoWidth;
|
516
518
|
readonly attribute unsigned long videoHeight;
|
517
519
|
attribute DOMString poster;
|
518
|
-
[PutForwards=value] attribute DOMSettableTokenList audio;
|
519
520
|
};
|
520
521
|
|
521
522
|
[NamedConstructor=Audio(),
|
@@ -541,11 +542,12 @@ interface HTMLTrackElement : HTMLElement {
|
|
541
542
|
interface HTMLMediaElement : HTMLElement {
|
542
543
|
|
543
544
|
// error state
|
544
|
-
readonly attribute MediaError error;
|
545
|
+
readonly attribute MediaError? error;
|
545
546
|
|
546
547
|
// network state
|
547
548
|
attribute DOMString src;
|
548
549
|
readonly attribute DOMString currentSrc;
|
550
|
+
attribute DOMString crossOrigin;
|
549
551
|
const unsigned short NETWORK_EMPTY = 0;
|
550
552
|
const unsigned short NETWORK_IDLE = 1;
|
551
553
|
const unsigned short NETWORK_LOADING = 2;
|
@@ -583,21 +585,19 @@ interface HTMLMediaElement : HTMLElement {
|
|
583
585
|
|
584
586
|
// media controller
|
585
587
|
attribute DOMString mediaGroup;
|
586
|
-
attribute MediaController controller;
|
588
|
+
attribute MediaController? controller;
|
587
589
|
|
588
590
|
// controls
|
589
591
|
attribute boolean controls;
|
590
592
|
attribute double volume;
|
591
593
|
attribute boolean muted;
|
594
|
+
attribute boolean defaultMuted;
|
592
595
|
|
593
596
|
// tracks
|
594
|
-
|
595
|
-
readonly attribute
|
596
|
-
readonly attribute
|
597
|
-
|
598
|
-
readonly attribute TextTrack[] textTracks;
|
597
|
+
readonly attribute AudioTrackList audioTracks;
|
598
|
+
readonly attribute VideoTrackList videoTracks;
|
599
|
+
readonly attribute TextTrackList textTracks;
|
599
600
|
MutableTextTrack addTextTrack(in DOMString kind, in optional DOMString label, in optional DOMString language);
|
600
|
-
|
601
601
|
};
|
602
602
|
|
603
603
|
interface MediaError {
|
@@ -608,23 +608,35 @@ interface MediaError {
|
|
608
608
|
readonly attribute unsigned short code;
|
609
609
|
};
|
610
610
|
|
611
|
-
interface
|
611
|
+
interface AudioTrackList {
|
612
612
|
readonly attribute unsigned long length;
|
613
|
-
|
614
|
-
|
613
|
+
getter AudioTrack (in unsigned long index);
|
614
|
+
AudioTrack? getTrackById(in DOMString id);
|
615
|
+
attribute Function? onchange;
|
616
|
+
};
|
615
617
|
|
616
|
-
|
618
|
+
interface AudioTrack {
|
619
|
+
readonly attribute DOMString id;
|
620
|
+
readonly attribute DOMString kind;
|
621
|
+
readonly attribute DOMString label;
|
622
|
+
readonly attribute DOMString language;
|
623
|
+
attribute boolean enabled;
|
617
624
|
};
|
618
625
|
|
619
|
-
interface
|
620
|
-
|
621
|
-
|
622
|
-
|
626
|
+
interface VideoTrackList {
|
627
|
+
readonly attribute unsigned long length;
|
628
|
+
getter VideoTrack (in unsigned long index);
|
629
|
+
VideoTrack? getTrackById(in DOMString id);
|
630
|
+
readonly attribute long selectedIndex;
|
631
|
+
attribute Function? onchange;
|
623
632
|
};
|
624
633
|
|
625
|
-
interface
|
626
|
-
readonly attribute
|
627
|
-
|
634
|
+
interface VideoTrack {
|
635
|
+
readonly attribute DOMString id;
|
636
|
+
readonly attribute DOMString kind;
|
637
|
+
readonly attribute DOMString label;
|
638
|
+
readonly attribute DOMString language;
|
639
|
+
attribute boolean selected;
|
628
640
|
};
|
629
641
|
|
630
642
|
[Constructor]
|
@@ -635,6 +647,7 @@ interface MediaController {
|
|
635
647
|
attribute double currentTime;
|
636
648
|
|
637
649
|
readonly attribute boolean paused;
|
650
|
+
readonly attribute TimeRanges played;
|
638
651
|
void play();
|
639
652
|
void pause();
|
640
653
|
|
@@ -644,12 +657,21 @@ interface MediaController {
|
|
644
657
|
attribute double volume;
|
645
658
|
attribute boolean muted;
|
646
659
|
|
647
|
-
attribute Function
|
648
|
-
attribute Function
|
649
|
-
attribute Function
|
650
|
-
attribute Function
|
651
|
-
attribute Function
|
652
|
-
attribute Function
|
660
|
+
attribute Function? onemptied;
|
661
|
+
attribute Function? onloadedmetadata;
|
662
|
+
attribute Function? onloadeddata;
|
663
|
+
attribute Function? oncanplay;
|
664
|
+
attribute Function? oncanplaythrough;
|
665
|
+
attribute Function? onplaying;
|
666
|
+
attribute Function? onended;
|
667
|
+
attribute Function? onwaiting;
|
668
|
+
|
669
|
+
attribute Function? ondurationchange;
|
670
|
+
attribute Function? ontimeupdate;
|
671
|
+
attribute Function? onplay;
|
672
|
+
attribute Function? onpause;
|
673
|
+
attribute Function? onratechange;
|
674
|
+
attribute Function? onvolumechange;
|
653
675
|
};
|
654
676
|
|
655
677
|
interface TextTrack {
|
@@ -662,21 +684,23 @@ interface TextTrack {
|
|
662
684
|
const unsigned short LOADED = 2;
|
663
685
|
const unsigned short ERROR = 3;
|
664
686
|
readonly attribute unsigned short readyState;
|
665
|
-
attribute Function onload;
|
666
|
-
attribute Function onerror;
|
687
|
+
attribute Function? onload;
|
688
|
+
attribute Function? onerror;
|
667
689
|
|
668
690
|
const unsigned short OFF = 0;
|
669
691
|
const unsigned short HIDDEN = 1;
|
670
692
|
const unsigned short SHOWING = 2;
|
671
693
|
attribute unsigned short mode;
|
672
694
|
|
673
|
-
readonly attribute TextTrackCueList cues;
|
674
|
-
readonly attribute TextTrackCueList activeCues;
|
695
|
+
readonly attribute TextTrackCueList? cues;
|
696
|
+
readonly attribute TextTrackCueList? activeCues;
|
675
697
|
|
676
|
-
attribute Function oncuechange;
|
698
|
+
attribute Function? oncuechange;
|
677
699
|
};
|
678
700
|
TextTrack implements EventTarget;
|
679
701
|
|
702
|
+
typedef TextTrack[] TextTrackList;
|
703
|
+
|
680
704
|
interface MutableTextTrack : TextTrack {
|
681
705
|
void addCue(in TextTrackCue cue);
|
682
706
|
void removeCue(in TextTrackCue cue);
|
@@ -685,7 +709,7 @@ interface MutableTextTrack : TextTrack {
|
|
685
709
|
interface TextTrackCueList {
|
686
710
|
readonly attribute unsigned long length;
|
687
711
|
getter TextTrackCue (in unsigned long index);
|
688
|
-
TextTrackCue getCueById(in DOMString id);
|
712
|
+
TextTrackCue? getCueById(in DOMString id);
|
689
713
|
};
|
690
714
|
|
691
715
|
|
@@ -693,7 +717,7 @@ interface TextTrackCueList {
|
|
693
717
|
[Constructor(in DOMString id, in double startTime, in double endTime, in DOMString text, in optional DOMString settings, in optional boolean pauseOnExit)]
|
694
718
|
|
695
719
|
interface TextTrackCue {
|
696
|
-
readonly attribute TextTrack track;
|
720
|
+
readonly attribute TextTrack? track;
|
697
721
|
readonly attribute DOMString id;
|
698
722
|
|
699
723
|
readonly attribute double startTime;
|
@@ -712,8 +736,8 @@ interface TextTrackCue {
|
|
712
736
|
DOMString getCueAsSource();
|
713
737
|
DocumentFragment getCueAsHTML();
|
714
738
|
|
715
|
-
attribute Function onenter;
|
716
|
-
attribute Function onexit;
|
739
|
+
attribute Function? onenter;
|
740
|
+
attribute Function? onexit;
|
717
741
|
};
|
718
742
|
TextTrackCue implements EventTarget;
|
719
743
|
|
@@ -728,8 +752,9 @@ interface HTMLCanvasElement : HTMLElement {
|
|
728
752
|
attribute unsigned long height;
|
729
753
|
|
730
754
|
DOMString toDataURL(in optional DOMString type, in any... args);
|
755
|
+
void toBlob(in FileCallback? callback, in optional DOMString type, in any... args);
|
731
756
|
|
732
|
-
object getContext(in DOMString contextId, in any... args);
|
757
|
+
object? getContext(in DOMString contextId, in any... args);
|
733
758
|
};
|
734
759
|
|
735
760
|
interface CanvasRenderingContext2D {
|
@@ -790,12 +815,12 @@ interface CanvasRenderingContext2D {
|
|
790
815
|
void arc(in double x, in double y, in double radius, in double startAngle, in double endAngle, in optional boolean anticlockwise);
|
791
816
|
void fill();
|
792
817
|
void stroke();
|
818
|
+
void drawSystemFocusRing(in Element element);
|
819
|
+
boolean drawCustomFocusRing(in Element element);
|
820
|
+
void scrollPathIntoView();
|
793
821
|
void clip();
|
794
822
|
boolean isPointInPath(in double x, in double y);
|
795
823
|
|
796
|
-
// focus management
|
797
|
-
boolean drawFocusRing(in Element element, in double xCaret, in double yCaret, in optional boolean canDrawCustom);
|
798
|
-
|
799
824
|
// text
|
800
825
|
attribute DOMString font; // (default 10px sans-serif)
|
801
826
|
attribute DOMString textAlign; // "start", "end", "left", "right", "center" (default: "start")
|
@@ -805,18 +830,22 @@ interface CanvasRenderingContext2D {
|
|
805
830
|
TextMetrics measureText(in DOMString text);
|
806
831
|
|
807
832
|
// drawing images
|
808
|
-
void drawImage(in HTMLImageElement image, in double dx, in double dy
|
833
|
+
void drawImage(in HTMLImageElement image, in double dx, in double dy);
|
834
|
+
void drawImage(in HTMLImageElement image, in double dx, in double dy, in double dw, in double dh);
|
809
835
|
void drawImage(in HTMLImageElement image, in double sx, in double sy, in double sw, in double sh, in double dx, in double dy, in double dw, in double dh);
|
810
|
-
void drawImage(in HTMLCanvasElement image, in double dx, in double dy
|
836
|
+
void drawImage(in HTMLCanvasElement image, in double dx, in double dy);
|
837
|
+
void drawImage(in HTMLCanvasElement image, in double dx, in double dy, in double dw, in double dh);
|
811
838
|
void drawImage(in HTMLCanvasElement image, in double sx, in double sy, in double sw, in double sh, in double dx, in double dy, in double dw, in double dh);
|
812
|
-
void drawImage(in HTMLVideoElement image, in double dx, in double dy
|
839
|
+
void drawImage(in HTMLVideoElement image, in double dx, in double dy);
|
840
|
+
void drawImage(in HTMLVideoElement image, in double dx, in double dy, in double dw, in double dh);
|
813
841
|
void drawImage(in HTMLVideoElement image, in double sx, in double sy, in double sw, in double sh, in double dx, in double dy, in double dw, in double dh);
|
814
842
|
|
815
843
|
// pixel manipulation
|
816
844
|
ImageData createImageData(in double sw, in double sh);
|
817
845
|
ImageData createImageData(in ImageData imagedata);
|
818
846
|
ImageData getImageData(in double sx, in double sy, in double sw, in double sh);
|
819
|
-
void putImageData(in ImageData imagedata, in double dx, in double dy
|
847
|
+
void putImageData(in ImageData imagedata, in double dx, in double dy);
|
848
|
+
void putImageData(in ImageData imagedata, in double dx, in double dy, in double dirtyX, in double dirtyY, in double dirtyWidth, in double dirtyHeight);
|
820
849
|
};
|
821
850
|
|
822
851
|
interface CanvasGradient {
|
@@ -876,13 +905,13 @@ interface HTMLAreaElement : HTMLElement {
|
|
876
905
|
};
|
877
906
|
|
878
907
|
interface HTMLTableElement : HTMLElement {
|
879
|
-
attribute HTMLTableCaptionElement caption;
|
908
|
+
attribute HTMLTableCaptionElement? caption;
|
880
909
|
HTMLElement createCaption();
|
881
910
|
void deleteCaption();
|
882
|
-
attribute HTMLTableSectionElement tHead;
|
911
|
+
attribute HTMLTableSectionElement? tHead;
|
883
912
|
HTMLElement createTHead();
|
884
913
|
void deleteTHead();
|
885
|
-
attribute HTMLTableSectionElement tFoot;
|
914
|
+
attribute HTMLTableSectionElement? tFoot;
|
886
915
|
HTMLElement createTFoot();
|
887
916
|
void deleteTFoot();
|
888
917
|
readonly attribute HTMLCollection tBodies;
|
@@ -890,7 +919,7 @@ interface HTMLTableElement : HTMLElement {
|
|
890
919
|
readonly attribute HTMLCollection rows;
|
891
920
|
HTMLElement insertRow(in optional long index);
|
892
921
|
void deleteRow(in long index);
|
893
|
-
attribute DOMString
|
922
|
+
attribute DOMString border;
|
894
923
|
};
|
895
924
|
|
896
925
|
interface HTMLTableCaptionElement : HTMLElement {};
|
@@ -950,7 +979,7 @@ interface HTMLFormElement : HTMLElement {
|
|
950
979
|
|
951
980
|
interface HTMLFieldSetElement : HTMLElement {
|
952
981
|
attribute boolean disabled;
|
953
|
-
readonly attribute HTMLFormElement form;
|
982
|
+
readonly attribute HTMLFormElement? form;
|
954
983
|
attribute DOMString name;
|
955
984
|
|
956
985
|
readonly attribute DOMString type;
|
@@ -965,13 +994,13 @@ interface HTMLFieldSetElement : HTMLElement {
|
|
965
994
|
};
|
966
995
|
|
967
996
|
interface HTMLLegendElement : HTMLElement {
|
968
|
-
readonly attribute HTMLFormElement form;
|
997
|
+
readonly attribute HTMLFormElement? form;
|
969
998
|
};
|
970
999
|
|
971
1000
|
interface HTMLLabelElement : HTMLElement {
|
972
|
-
readonly attribute HTMLFormElement form;
|
1001
|
+
readonly attribute HTMLFormElement? form;
|
973
1002
|
attribute DOMString htmlFor;
|
974
|
-
readonly attribute HTMLElement control;
|
1003
|
+
readonly attribute HTMLElement? control;
|
975
1004
|
};
|
976
1005
|
|
977
1006
|
interface HTMLInputElement : HTMLElement {
|
@@ -983,8 +1012,8 @@ interface HTMLInputElement : HTMLElement {
|
|
983
1012
|
attribute boolean checked;
|
984
1013
|
attribute DOMString dirName;
|
985
1014
|
attribute boolean disabled;
|
986
|
-
readonly attribute HTMLFormElement form;
|
987
|
-
readonly attribute FileList files;
|
1015
|
+
readonly attribute HTMLFormElement? form;
|
1016
|
+
readonly attribute FileList? files;
|
988
1017
|
attribute DOMString formAction;
|
989
1018
|
attribute DOMString formEnctype;
|
990
1019
|
attribute DOMString formMethod;
|
@@ -992,7 +1021,7 @@ interface HTMLInputElement : HTMLElement {
|
|
992
1021
|
attribute DOMString formTarget;
|
993
1022
|
attribute DOMString height;
|
994
1023
|
attribute boolean indeterminate;
|
995
|
-
readonly attribute HTMLElement list;
|
1024
|
+
readonly attribute HTMLElement? list;
|
996
1025
|
attribute DOMString max;
|
997
1026
|
attribute long maxLength;
|
998
1027
|
attribute DOMString min;
|
@@ -1010,7 +1039,7 @@ interface HTMLInputElement : HTMLElement {
|
|
1010
1039
|
attribute DOMString value;
|
1011
1040
|
attribute Date valueAsDate;
|
1012
1041
|
attribute double valueAsNumber;
|
1013
|
-
readonly attribute HTMLOptionElement selectedOption;
|
1042
|
+
readonly attribute HTMLOptionElement? selectedOption;
|
1014
1043
|
attribute DOMString width;
|
1015
1044
|
|
1016
1045
|
void stepUp(in optional long n);
|
@@ -1027,13 +1056,14 @@ interface HTMLInputElement : HTMLElement {
|
|
1027
1056
|
void select();
|
1028
1057
|
attribute unsigned long selectionStart;
|
1029
1058
|
attribute unsigned long selectionEnd;
|
1030
|
-
|
1059
|
+
attribute DOMString selectionDirection;
|
1060
|
+
void setSelectionRange(in unsigned long start, in unsigned long end, in optional DOMString direction);
|
1031
1061
|
};
|
1032
1062
|
|
1033
1063
|
interface HTMLButtonElement : HTMLElement {
|
1034
1064
|
attribute boolean autofocus;
|
1035
1065
|
attribute boolean disabled;
|
1036
|
-
readonly attribute HTMLFormElement form;
|
1066
|
+
readonly attribute HTMLFormElement? form;
|
1037
1067
|
attribute DOMString formAction;
|
1038
1068
|
attribute DOMString formEnctype;
|
1039
1069
|
attribute DOMString formMethod;
|
@@ -1055,7 +1085,7 @@ interface HTMLButtonElement : HTMLElement {
|
|
1055
1085
|
interface HTMLSelectElement : HTMLElement {
|
1056
1086
|
attribute boolean autofocus;
|
1057
1087
|
attribute boolean disabled;
|
1058
|
-
readonly attribute HTMLFormElement form;
|
1088
|
+
readonly attribute HTMLFormElement? form;
|
1059
1089
|
attribute boolean multiple;
|
1060
1090
|
attribute DOMString name;
|
1061
1091
|
attribute boolean required;
|
@@ -1067,7 +1097,7 @@ interface HTMLSelectElement : HTMLElement {
|
|
1067
1097
|
attribute unsigned long length;
|
1068
1098
|
getter any item(in unsigned long index);
|
1069
1099
|
any namedItem(in DOMString name);
|
1070
|
-
void add(in HTMLElement element, in optional HTMLElement before);
|
1100
|
+
void add(in HTMLElement element, in optional HTMLElement? before);
|
1071
1101
|
void add(in HTMLElement element, in long before);
|
1072
1102
|
void remove(in long index);
|
1073
1103
|
|
@@ -1100,7 +1130,7 @@ interface HTMLOptGroupElement : HTMLElement {
|
|
1100
1130
|
NamedConstructor=Option(in DOMString text, in DOMString value, in boolean defaultSelected, in boolean selected)]
|
1101
1131
|
interface HTMLOptionElement : HTMLElement {
|
1102
1132
|
attribute boolean disabled;
|
1103
|
-
readonly attribute HTMLFormElement form;
|
1133
|
+
readonly attribute HTMLFormElement? form;
|
1104
1134
|
attribute DOMString label;
|
1105
1135
|
attribute boolean defaultSelected;
|
1106
1136
|
attribute boolean selected;
|
@@ -1115,7 +1145,7 @@ interface HTMLTextAreaElement : HTMLElement {
|
|
1115
1145
|
attribute unsigned long cols;
|
1116
1146
|
attribute DOMString dirName;
|
1117
1147
|
attribute boolean disabled;
|
1118
|
-
readonly attribute HTMLFormElement form;
|
1148
|
+
readonly attribute HTMLFormElement? form;
|
1119
1149
|
attribute long maxLength;
|
1120
1150
|
attribute DOMString name;
|
1121
1151
|
attribute DOMString placeholder;
|
@@ -1140,14 +1170,15 @@ interface HTMLTextAreaElement : HTMLElement {
|
|
1140
1170
|
void select();
|
1141
1171
|
attribute unsigned long selectionStart;
|
1142
1172
|
attribute unsigned long selectionEnd;
|
1143
|
-
|
1173
|
+
attribute DOMString selectionDirection;
|
1174
|
+
void setSelectionRange(in unsigned long start, in unsigned long end, in optional DOMString direction);
|
1144
1175
|
};
|
1145
1176
|
|
1146
1177
|
interface HTMLKeygenElement : HTMLElement {
|
1147
1178
|
attribute boolean autofocus;
|
1148
1179
|
attribute DOMString challenge;
|
1149
1180
|
attribute boolean disabled;
|
1150
|
-
readonly attribute HTMLFormElement form;
|
1181
|
+
readonly attribute HTMLFormElement? form;
|
1151
1182
|
attribute DOMString keytype;
|
1152
1183
|
attribute DOMString name;
|
1153
1184
|
|
@@ -1164,7 +1195,7 @@ interface HTMLKeygenElement : HTMLElement {
|
|
1164
1195
|
|
1165
1196
|
interface HTMLOutputElement : HTMLElement {
|
1166
1197
|
[PutForwards=value] readonly attribute DOMSettableTokenList htmlFor;
|
1167
|
-
readonly attribute HTMLFormElement form;
|
1198
|
+
readonly attribute HTMLFormElement? form;
|
1168
1199
|
attribute DOMString name;
|
1169
1200
|
|
1170
1201
|
readonly attribute DOMString type;
|
@@ -1184,7 +1215,6 @@ interface HTMLProgressElement : HTMLElement {
|
|
1184
1215
|
attribute double value;
|
1185
1216
|
attribute double max;
|
1186
1217
|
readonly attribute double position;
|
1187
|
-
readonly attribute HTMLFormElement form;
|
1188
1218
|
readonly attribute NodeList labels;
|
1189
1219
|
};
|
1190
1220
|
|
@@ -1195,7 +1225,6 @@ interface HTMLMeterElement : HTMLElement {
|
|
1195
1225
|
attribute double low;
|
1196
1226
|
attribute double high;
|
1197
1227
|
attribute double optimum;
|
1198
|
-
readonly attribute HTMLFormElement form;
|
1199
1228
|
readonly attribute NodeList labels;
|
1200
1229
|
};
|
1201
1230
|
|
@@ -1229,13 +1258,13 @@ interface HTMLMenuElement : HTMLElement {
|
|
1229
1258
|
attribute DOMString label;
|
1230
1259
|
};
|
1231
1260
|
|
1232
|
-
[ReplaceableNamedProperties]
|
1261
|
+
[ReplaceableNamedProperties]
|
1233
1262
|
interface Window {
|
1234
1263
|
// the current browsing context
|
1235
1264
|
readonly attribute WindowProxy window;
|
1236
1265
|
readonly attribute WindowProxy self;
|
1237
1266
|
readonly attribute Document document;
|
1238
|
-
attribute DOMString name;
|
1267
|
+
attribute DOMString name;
|
1239
1268
|
[PutForwards=href] readonly attribute Location location;
|
1240
1269
|
readonly attribute History history;
|
1241
1270
|
|
@@ -1247,6 +1276,7 @@ interface Window {
|
|
1247
1276
|
[Replaceable] readonly attribute BarProp scrollbars;
|
1248
1277
|
[Replaceable] readonly attribute BarProp statusbar;
|
1249
1278
|
[Replaceable] readonly attribute BarProp toolbar;
|
1279
|
+
attribute DOMString status;
|
1250
1280
|
void close();
|
1251
1281
|
void stop();
|
1252
1282
|
void focus();
|
@@ -1258,97 +1288,96 @@ interface Window {
|
|
1258
1288
|
readonly attribute WindowProxy top;
|
1259
1289
|
attribute WindowProxy opener;
|
1260
1290
|
readonly attribute WindowProxy parent;
|
1261
|
-
readonly attribute Element frameElement;
|
1291
|
+
readonly attribute Element? frameElement;
|
1262
1292
|
WindowProxy open(in optional DOMString url, in optional DOMString target, in optional DOMString features, in optional DOMString replace);
|
1263
1293
|
getter WindowProxy (in unsigned long index);
|
1264
1294
|
getter any (in DOMString name);
|
1265
1295
|
|
1266
1296
|
// the user agent
|
1267
|
-
readonly attribute Navigator navigator;
|
1297
|
+
readonly attribute Navigator navigator;
|
1298
|
+
readonly attribute External external;
|
1268
1299
|
readonly attribute ApplicationCache applicationCache;
|
1269
1300
|
|
1270
1301
|
// user prompts
|
1271
1302
|
void alert(in DOMString message);
|
1272
1303
|
boolean confirm(in DOMString message);
|
1273
|
-
DOMString prompt(in DOMString message, in optional DOMString default);
|
1304
|
+
DOMString? prompt(in DOMString message, in optional DOMString default);
|
1274
1305
|
void print();
|
1275
1306
|
any showModalDialog(in DOMString url, in optional any argument);
|
1276
1307
|
|
1277
1308
|
// cross-document messaging
|
1278
|
-
void postMessage(in any message, in DOMString targetOrigin, in optional
|
1309
|
+
void postMessage(in any message, in DOMString targetOrigin, in optional sequence<Transferable> transfer);
|
1279
1310
|
|
1280
1311
|
// event handler IDL attributes
|
1281
|
-
attribute Function onabort;
|
1282
|
-
attribute Function onafterprint;
|
1283
|
-
attribute Function onbeforeprint;
|
1284
|
-
attribute Function onbeforeunload;
|
1285
|
-
attribute Function onblur;
|
1286
|
-
attribute Function oncanplay;
|
1287
|
-
attribute Function oncanplaythrough;
|
1288
|
-
attribute Function onchange;
|
1289
|
-
attribute Function onclick;
|
1290
|
-
attribute Function oncontextmenu;
|
1291
|
-
|
1292
|
-
attribute Function
|
1293
|
-
|
1294
|
-
attribute Function
|
1295
|
-
attribute Function
|
1296
|
-
attribute Function
|
1297
|
-
attribute Function
|
1298
|
-
attribute Function
|
1299
|
-
attribute Function
|
1300
|
-
attribute Function
|
1301
|
-
attribute Function
|
1302
|
-
attribute Function
|
1303
|
-
attribute Function
|
1304
|
-
attribute Function
|
1305
|
-
attribute Function
|
1306
|
-
attribute Function
|
1307
|
-
attribute Function
|
1308
|
-
attribute Function
|
1309
|
-
attribute Function
|
1310
|
-
attribute Function
|
1311
|
-
attribute Function
|
1312
|
-
attribute Function
|
1313
|
-
attribute Function
|
1314
|
-
attribute Function
|
1315
|
-
attribute Function
|
1316
|
-
attribute Function
|
1317
|
-
attribute Function
|
1318
|
-
attribute Function
|
1319
|
-
attribute Function
|
1320
|
-
attribute Function
|
1321
|
-
attribute Function
|
1322
|
-
attribute Function
|
1323
|
-
attribute Function
|
1324
|
-
attribute Function
|
1325
|
-
attribute Function
|
1326
|
-
attribute Function
|
1327
|
-
attribute Function
|
1328
|
-
attribute Function
|
1329
|
-
attribute Function
|
1330
|
-
attribute Function
|
1331
|
-
attribute Function
|
1332
|
-
attribute Function
|
1333
|
-
attribute Function
|
1334
|
-
attribute Function
|
1335
|
-
attribute Function
|
1336
|
-
attribute Function
|
1337
|
-
attribute Function
|
1338
|
-
attribute Function
|
1339
|
-
attribute Function
|
1340
|
-
attribute Function
|
1341
|
-
attribute Function
|
1342
|
-
attribute Function
|
1343
|
-
attribute Function
|
1344
|
-
attribute Function
|
1345
|
-
attribute Function
|
1346
|
-
attribute Function
|
1347
|
-
attribute Function
|
1348
|
-
attribute Function
|
1349
|
-
attribute Function
|
1350
|
-
attribute Function onvolumechange;
|
1351
|
-
attribute Function onwaiting;
|
1312
|
+
attribute Function? onabort;
|
1313
|
+
attribute Function? onafterprint;
|
1314
|
+
attribute Function? onbeforeprint;
|
1315
|
+
attribute Function? onbeforeunload;
|
1316
|
+
attribute Function? onblur;
|
1317
|
+
attribute Function? oncanplay;
|
1318
|
+
attribute Function? oncanplaythrough;
|
1319
|
+
attribute Function? onchange;
|
1320
|
+
attribute Function? onclick;
|
1321
|
+
attribute Function? oncontextmenu;
|
1322
|
+
attribute Function? oncuechange;
|
1323
|
+
attribute Function? ondblclick;
|
1324
|
+
attribute Function? ondrag;
|
1325
|
+
attribute Function? ondragend;
|
1326
|
+
attribute Function? ondragenter;
|
1327
|
+
attribute Function? ondragleave;
|
1328
|
+
attribute Function? ondragover;
|
1329
|
+
attribute Function? ondragstart;
|
1330
|
+
attribute Function? ondrop;
|
1331
|
+
attribute Function? ondurationchange;
|
1332
|
+
attribute Function? onemptied;
|
1333
|
+
attribute Function? onended;
|
1334
|
+
attribute Function? onerror;
|
1335
|
+
attribute Function? onfocus;
|
1336
|
+
attribute Function? onhashchange;
|
1337
|
+
attribute Function? oninput;
|
1338
|
+
attribute Function? oninvalid;
|
1339
|
+
attribute Function? onkeydown;
|
1340
|
+
attribute Function? onkeypress;
|
1341
|
+
attribute Function? onkeyup;
|
1342
|
+
attribute Function? onload;
|
1343
|
+
attribute Function? onloadeddata;
|
1344
|
+
attribute Function? onloadedmetadata;
|
1345
|
+
attribute Function? onloadstart;
|
1346
|
+
attribute Function? onmessage;
|
1347
|
+
attribute Function? onmousedown;
|
1348
|
+
attribute Function? onmousemove;
|
1349
|
+
attribute Function? onmouseout;
|
1350
|
+
attribute Function? onmouseover;
|
1351
|
+
attribute Function? onmouseup;
|
1352
|
+
attribute Function? onmousewheel;
|
1353
|
+
attribute Function? onoffline;
|
1354
|
+
attribute Function? ononline;
|
1355
|
+
attribute Function? onpause;
|
1356
|
+
attribute Function? onplay;
|
1357
|
+
attribute Function? onplaying;
|
1358
|
+
attribute Function? onpagehide;
|
1359
|
+
attribute Function? onpageshow;
|
1360
|
+
attribute Function? onpopstate;
|
1361
|
+
attribute Function? onprogress;
|
1362
|
+
attribute Function? onratechange;
|
1363
|
+
attribute Function? onreadystatechange;
|
1364
|
+
attribute Function? onredo;
|
1365
|
+
attribute Function? onreset;
|
1366
|
+
attribute Function? onresize;
|
1367
|
+
attribute Function? onscroll;
|
1368
|
+
attribute Function? onseeked;
|
1369
|
+
attribute Function? onseeking;
|
1370
|
+
attribute Function? onselect;
|
1371
|
+
attribute Function? onshow;
|
1372
|
+
attribute Function? onstalled;
|
1373
|
+
attribute Function? onstorage;
|
1374
|
+
attribute Function? onsubmit;
|
1375
|
+
attribute Function? onsuspend;
|
1376
|
+
attribute Function? ontimeupdate;
|
1377
|
+
attribute Function? onundo;
|
1378
|
+
attribute Function? onunload;
|
1379
|
+
attribute Function? onvolumechange;
|
1380
|
+
attribute Function? onwaiting;
|
1352
1381
|
};
|
1353
1382
|
Window implements EventTarget;
|
1354
1383
|
|
@@ -1372,7 +1401,7 @@ interface Location {
|
|
1372
1401
|
void replace(in DOMString url);
|
1373
1402
|
void reload();
|
1374
1403
|
|
1375
|
-
// URL decomposition IDL attributes
|
1404
|
+
// URL decomposition IDL attributes
|
1376
1405
|
attribute DOMString protocol;
|
1377
1406
|
attribute DOMString host;
|
1378
1407
|
attribute DOMString hostname;
|
@@ -1421,14 +1450,14 @@ interface ApplicationCache {
|
|
1421
1450
|
void swapCache();
|
1422
1451
|
|
1423
1452
|
// events
|
1424
|
-
attribute Function onchecking;
|
1425
|
-
attribute Function onerror;
|
1426
|
-
attribute Function onnoupdate;
|
1427
|
-
attribute Function ondownloading;
|
1428
|
-
attribute Function onprogress;
|
1429
|
-
attribute Function onupdateready;
|
1430
|
-
attribute Function oncached;
|
1431
|
-
attribute Function onobsolete;
|
1453
|
+
attribute Function? onchecking;
|
1454
|
+
attribute Function? onerror;
|
1455
|
+
attribute Function? onnoupdate;
|
1456
|
+
attribute Function? ondownloading;
|
1457
|
+
attribute Function? onprogress;
|
1458
|
+
attribute Function? onupdateready;
|
1459
|
+
attribute Function? oncached;
|
1460
|
+
attribute Function? onobsolete;
|
1432
1461
|
};
|
1433
1462
|
ApplicationCache implements EventTarget;
|
1434
1463
|
|
@@ -1491,11 +1520,16 @@ interface NavigatorStorageUtils {
|
|
1491
1520
|
void yieldForStorageUpdates();
|
1492
1521
|
};
|
1493
1522
|
|
1523
|
+
interface External {
|
1524
|
+
void AddSearchProvider(in DOMString engineURL);
|
1525
|
+
unsigned long IsSearchProviderInstalled(in DOMString engineURL);
|
1526
|
+
};
|
1527
|
+
|
1494
1528
|
interface DataTransfer {
|
1495
1529
|
attribute DOMString dropEffect;
|
1496
1530
|
attribute DOMString effectAllowed;
|
1497
1531
|
|
1498
|
-
readonly attribute
|
1532
|
+
readonly attribute DataTransferItemList items;
|
1499
1533
|
|
1500
1534
|
void setDragImage(in Element image, in long x, in long y);
|
1501
1535
|
void addElement(in Element element);
|
@@ -1508,21 +1542,21 @@ interface DataTransfer {
|
|
1508
1542
|
readonly attribute FileList files;
|
1509
1543
|
};
|
1510
1544
|
|
1511
|
-
interface
|
1545
|
+
interface DataTransferItemList {
|
1512
1546
|
readonly attribute unsigned long length;
|
1513
1547
|
getter DataTransferItem (in unsigned long index);
|
1514
1548
|
deleter void (in unsigned long index);
|
1515
1549
|
void clear();
|
1516
1550
|
|
1517
|
-
DataTransferItem add(in DOMString data, in DOMString type);
|
1518
|
-
DataTransferItem add(in File data);
|
1551
|
+
DataTransferItem? add(in DOMString data, in DOMString type);
|
1552
|
+
DataTransferItem? add(in File data);
|
1519
1553
|
};
|
1520
1554
|
|
1521
1555
|
interface DataTransferItem {
|
1522
1556
|
readonly attribute DOMString kind;
|
1523
1557
|
readonly attribute DOMString type;
|
1524
|
-
void getAsString(in FunctionStringCallback callback);
|
1525
|
-
File getAsFile();
|
1558
|
+
void getAsString(in FunctionStringCallback? callback);
|
1559
|
+
File? getAsFile();
|
1526
1560
|
};
|
1527
1561
|
|
1528
1562
|
[Callback=FunctionOnly, NoInterfaceObject]
|
@@ -1531,9 +1565,9 @@ interface FunctionStringCallback {
|
|
1531
1565
|
};
|
1532
1566
|
|
1533
1567
|
interface DragEvent : MouseEvent {
|
1534
|
-
readonly attribute DataTransfer dataTransfer;
|
1568
|
+
readonly attribute DataTransfer? dataTransfer;
|
1535
1569
|
|
1536
|
-
void initDragEvent(in DOMString typeArg, in boolean canBubbleArg, in boolean cancelableArg, in any dummyArg, in long detailArg, in long screenXArg, in long screenYArg, in long clientXArg, in long clientYArg, in boolean ctrlKeyArg, in boolean altKeyArg, in boolean shiftKeyArg, in boolean metaKeyArg, in unsigned short buttonArg, in EventTarget relatedTargetArg, in DataTransfer dataTransferArg);
|
1570
|
+
void initDragEvent(in DOMString typeArg, in boolean canBubbleArg, in boolean cancelableArg, in any dummyArg, in long detailArg, in long screenXArg, in long screenYArg, in long clientXArg, in long clientYArg, in boolean ctrlKeyArg, in boolean altKeyArg, in boolean shiftKeyArg, in boolean metaKeyArg, in unsigned short buttonArg, in EventTarget relatedTargetArg, in DataTransfer? dataTransferArg);
|
1537
1571
|
};
|
1538
1572
|
|
1539
1573
|
interface UndoManager {
|
@@ -1553,13 +1587,13 @@ interface UndoManagerEvent : Event {
|
|
1553
1587
|
|
1554
1588
|
[Supplemental, NoInterfaceObject]
|
1555
1589
|
interface NavigatorUserMedia {
|
1556
|
-
void getUserMedia(in DOMString options, in NavigatorUserMediaSuccessCallback successCallback, in optional NavigatorUserMediaErrorCallback errorCallback);
|
1590
|
+
void getUserMedia(in DOMString options, in NavigatorUserMediaSuccessCallback? successCallback, in optional NavigatorUserMediaErrorCallback? errorCallback);
|
1557
1591
|
};
|
1558
1592
|
Navigator implements NavigatorUserMedia;
|
1559
1593
|
|
1560
1594
|
[Callback=FunctionOnly, NoInterfaceObject]
|
1561
1595
|
interface NavigatorUserMediaSuccessCallback {
|
1562
|
-
void handleEvent(in
|
1596
|
+
void handleEvent(in LocalMediaStream stream);
|
1563
1597
|
};
|
1564
1598
|
|
1565
1599
|
[NoInterfaceObject]
|
@@ -1573,27 +1607,34 @@ interface NavigatorUserMediaErrorCallback {
|
|
1573
1607
|
void handleEvent(in NavigatorUserMediaError error);
|
1574
1608
|
};
|
1575
1609
|
|
1576
|
-
|
1610
|
+
[Constructor(in MediaStream parentStream)]
|
1611
|
+
interface MediaStream {
|
1577
1612
|
readonly attribute DOMString label;
|
1578
|
-
|
1613
|
+
readonly attribute MediaStreamTrackList tracks;
|
1614
|
+
|
1615
|
+
MediaStreamRecorder record();
|
1579
1616
|
|
1580
1617
|
const unsigned short LIVE = 1;
|
1581
1618
|
const unsigned short ENDED = 2;
|
1582
1619
|
readonly attribute unsigned short readyState;
|
1583
|
-
attribute Function onended;
|
1620
|
+
attribute Function? onended;
|
1584
1621
|
};
|
1585
|
-
|
1622
|
+
MediaStream implements EventTarget;
|
1586
1623
|
|
1587
|
-
interface
|
1624
|
+
interface LocalMediaStream : MediaStream {
|
1588
1625
|
void stop();
|
1626
|
+
};
|
1627
|
+
|
1628
|
+
typedef MediaStreamTrack[] MediaStreamTrackList;
|
1589
1629
|
|
1590
|
-
|
1591
|
-
readonly attribute
|
1592
|
-
readonly attribute
|
1630
|
+
interface MediaStreamTrack {
|
1631
|
+
readonly attribute DOMString kind;
|
1632
|
+
readonly attribute DOMString label;
|
1633
|
+
attribute boolean enabled;
|
1593
1634
|
};
|
1594
1635
|
|
1595
|
-
interface
|
1596
|
-
void getRecordedData(in BlobCallback callback);
|
1636
|
+
interface MediaStreamRecorder {
|
1637
|
+
void getRecordedData(in BlobCallback? callback);
|
1597
1638
|
};
|
1598
1639
|
|
1599
1640
|
[Callback=FunctionOnly, NoInterfaceObject]
|
@@ -1603,12 +1644,12 @@ interface BlobCallback {
|
|
1603
1644
|
|
1604
1645
|
[Supplemental]
|
1605
1646
|
interface URL {
|
1606
|
-
static DOMString createObjectURL(in
|
1647
|
+
static DOMString createObjectURL(in MediaStream stream);
|
1607
1648
|
};
|
1608
1649
|
|
1609
1650
|
[Constructor(in DOMString configuration, in SignalingCallback signalingCallback)]
|
1610
1651
|
interface PeerConnection {
|
1611
|
-
void
|
1652
|
+
void processSignalingMessage(in DOMString message);
|
1612
1653
|
|
1613
1654
|
const unsigned short NEW = 0;
|
1614
1655
|
const unsigned short NEGOTIATING = 1;
|
@@ -1617,21 +1658,19 @@ interface PeerConnection {
|
|
1617
1658
|
readonly attribute unsigned short readyState;
|
1618
1659
|
|
1619
1660
|
void send(in DOMString text);
|
1620
|
-
void addStream(in
|
1621
|
-
void removeStream(in
|
1622
|
-
readonly attribute
|
1623
|
-
readonly attribute
|
1661
|
+
void addStream(in MediaStream stream);
|
1662
|
+
void removeStream(in MediaStream stream);
|
1663
|
+
readonly attribute MediaStream[] localStreams;
|
1664
|
+
readonly attribute MediaStream[] remoteStreams;
|
1624
1665
|
|
1625
1666
|
void close();
|
1626
1667
|
|
1627
1668
|
// connection quality information
|
1628
|
-
attribute Function onconnecting;
|
1629
|
-
attribute Function onopen;
|
1630
|
-
attribute Function
|
1631
|
-
attribute Function
|
1632
|
-
attribute Function
|
1633
|
-
attribute Function onaddstream;
|
1634
|
-
attribute Function onremovestream;
|
1669
|
+
attribute Function? onconnecting;
|
1670
|
+
attribute Function? onopen;
|
1671
|
+
attribute Function? onmessage;
|
1672
|
+
attribute Function? onaddstream;
|
1673
|
+
attribute Function? onremovestream;
|
1635
1674
|
};
|
1636
1675
|
PeerConnection implements EventTarget;
|
1637
1676
|
|
@@ -1641,17 +1680,17 @@ interface SignalingCallback {
|
|
1641
1680
|
};
|
1642
1681
|
|
1643
1682
|
interface StreamEvent : Event {
|
1644
|
-
readonly attribute
|
1645
|
-
void initStreamEvent(in DOMString typeArg, in boolean canBubbleArg, in boolean cancelableArg, in
|
1683
|
+
readonly attribute MediaStream? stream;
|
1684
|
+
void initStreamEvent(in DOMString typeArg, in boolean canBubbleArg, in boolean cancelableArg, in MediaStream? streamArg);
|
1646
1685
|
};
|
1647
1686
|
|
1648
1687
|
interface MessageEvent : Event {
|
1649
1688
|
readonly attribute any data;
|
1650
1689
|
readonly attribute DOMString origin;
|
1651
1690
|
readonly attribute DOMString lastEventId;
|
1652
|
-
readonly attribute WindowProxy source;
|
1653
|
-
readonly attribute
|
1654
|
-
void initMessageEvent(in DOMString typeArg, in boolean canBubbleArg, in boolean cancelableArg, in any dataArg, in DOMString originArg, in DOMString lastEventIdArg, in WindowProxy sourceArg, in
|
1691
|
+
readonly attribute WindowProxy? source;
|
1692
|
+
readonly attribute MessagePort[] ports;
|
1693
|
+
void initMessageEvent(in DOMString typeArg, in boolean canBubbleArg, in boolean cancelableArg, in any dataArg, in DOMString originArg, in DOMString lastEventIdArg, in WindowProxy? sourceArg, in sequence<MessagePort> portsArg);
|
1655
1694
|
};
|
1656
1695
|
|
1657
1696
|
[Constructor]
|
@@ -1660,17 +1699,16 @@ interface MessageChannel {
|
|
1660
1699
|
readonly attribute MessagePort port2;
|
1661
1700
|
};
|
1662
1701
|
|
1663
|
-
typedef sequence<MessagePort> MessagePortArray;
|
1664
|
-
|
1665
1702
|
interface MessagePort {
|
1666
|
-
void postMessage(in any message, in optional
|
1703
|
+
void postMessage(in any message, in optional sequence<Transferable> transfer);
|
1667
1704
|
void start();
|
1668
1705
|
void close();
|
1669
1706
|
|
1670
1707
|
// event handlers
|
1671
|
-
attribute Function onmessage;
|
1708
|
+
attribute Function? onmessage;
|
1672
1709
|
};
|
1673
1710
|
MessagePort implements EventTarget;
|
1711
|
+
MessagePort implements Transferable;
|
1674
1712
|
|
1675
1713
|
interface HTMLAppletElement : HTMLElement {
|
1676
1714
|
attribute DOMString align;
|
@@ -1681,7 +1719,7 @@ interface HTMLAppletElement : HTMLElement {
|
|
1681
1719
|
attribute DOMString height;
|
1682
1720
|
attribute unsigned long hspace;
|
1683
1721
|
attribute DOMString name;
|
1684
|
-
attribute DOMString _object; // the underscore is not part of the identifier
|
1722
|
+
attribute DOMString _object; // the underscore is not part of the identifier
|
1685
1723
|
attribute unsigned long vspace;
|
1686
1724
|
attribute DOMString width;
|
1687
1725
|
};
|
@@ -1699,9 +1737,9 @@ interface HTMLMarqueeElement : HTMLElement {
|
|
1699
1737
|
attribute unsigned long vspace;
|
1700
1738
|
attribute DOMString width;
|
1701
1739
|
|
1702
|
-
attribute Function onbounce;
|
1703
|
-
attribute Function onfinish;
|
1704
|
-
attribute Function onstart;
|
1740
|
+
attribute Function? onbounce;
|
1741
|
+
attribute Function? onfinish;
|
1742
|
+
attribute Function? onstart;
|
1705
1743
|
|
1706
1744
|
void start();
|
1707
1745
|
void stop();
|
@@ -1710,26 +1748,26 @@ interface HTMLMarqueeElement : HTMLElement {
|
|
1710
1748
|
interface HTMLFrameSetElement : HTMLElement {
|
1711
1749
|
attribute DOMString cols;
|
1712
1750
|
attribute DOMString rows;
|
1713
|
-
attribute Function onafterprint;
|
1714
|
-
attribute Function onbeforeprint;
|
1715
|
-
attribute Function onbeforeunload;
|
1716
|
-
attribute Function onblur;
|
1717
|
-
attribute Function onerror;
|
1718
|
-
attribute Function onfocus;
|
1719
|
-
attribute Function onhashchange;
|
1720
|
-
attribute Function onload;
|
1721
|
-
attribute Function onmessage;
|
1722
|
-
attribute Function onoffline;
|
1723
|
-
attribute Function ononline;
|
1724
|
-
attribute Function onpagehide;
|
1725
|
-
attribute Function onpageshow;
|
1726
|
-
attribute Function onpopstate;
|
1727
|
-
attribute Function onredo;
|
1728
|
-
attribute Function onresize;
|
1729
|
-
attribute Function onscroll;
|
1730
|
-
attribute Function onstorage;
|
1731
|
-
attribute Function onundo;
|
1732
|
-
attribute Function onunload;
|
1751
|
+
attribute Function? onafterprint;
|
1752
|
+
attribute Function? onbeforeprint;
|
1753
|
+
attribute Function? onbeforeunload;
|
1754
|
+
attribute Function? onblur;
|
1755
|
+
attribute Function? onerror;
|
1756
|
+
attribute Function? onfocus;
|
1757
|
+
attribute Function? onhashchange;
|
1758
|
+
attribute Function? onload;
|
1759
|
+
attribute Function? onmessage;
|
1760
|
+
attribute Function? onoffline;
|
1761
|
+
attribute Function? ononline;
|
1762
|
+
attribute Function? onpagehide;
|
1763
|
+
attribute Function? onpageshow;
|
1764
|
+
attribute Function? onpopstate;
|
1765
|
+
attribute Function? onredo;
|
1766
|
+
attribute Function? onresize;
|
1767
|
+
attribute Function? onscroll;
|
1768
|
+
attribute Function? onstorage;
|
1769
|
+
attribute Function? onundo;
|
1770
|
+
attribute Function? onunload;
|
1733
1771
|
};
|
1734
1772
|
|
1735
1773
|
interface HTMLFrameElement : HTMLElement {
|
@@ -1741,8 +1779,8 @@ interface HTMLFrameElement : HTMLElement {
|
|
1741
1779
|
attribute boolean noResize;
|
1742
1780
|
attribute DOMString scrolling;
|
1743
1781
|
attribute DOMString src;
|
1744
|
-
readonly attribute Document contentDocument;
|
1745
|
-
readonly attribute WindowProxy contentWindow;
|
1782
|
+
readonly attribute Document? contentDocument;
|
1783
|
+
readonly attribute WindowProxy? contentWindow;
|
1746
1784
|
};
|
1747
1785
|
|
1748
1786
|
[Supplemental]
|
@@ -1762,7 +1800,7 @@ interface HTMLAreaElement {
|
|
1762
1800
|
interface HTMLBaseFontElement : HTMLElement {
|
1763
1801
|
attribute DOMString color;
|
1764
1802
|
attribute DOMString face;
|
1765
|
-
attribute long size;
|
1803
|
+
attribute long size;
|
1766
1804
|
};
|
1767
1805
|
|
1768
1806
|
[Supplemental]
|
@@ -1817,7 +1855,7 @@ interface HTMLEmbedElement {
|
|
1817
1855
|
interface HTMLFontElement : HTMLElement {
|
1818
1856
|
attribute DOMString color;
|
1819
1857
|
attribute DOMString face;
|
1820
|
-
attribute DOMString size;
|
1858
|
+
attribute DOMString size;
|
1821
1859
|
};
|
1822
1860
|
|
1823
1861
|
[Supplemental]
|
@@ -1937,11 +1975,11 @@ interface HTMLScriptElement {
|
|
1937
1975
|
interface HTMLTableElement {
|
1938
1976
|
attribute DOMString align;
|
1939
1977
|
attribute DOMString bgColor;
|
1940
|
-
attribute DOMString border;
|
1941
1978
|
attribute DOMString cellPadding;
|
1942
1979
|
attribute DOMString cellSpacing;
|
1943
1980
|
attribute DOMString frame;
|
1944
1981
|
attribute DOMString rules;
|
1982
|
+
attribute DOMString summary;
|
1945
1983
|
attribute DOMString width;
|
1946
1984
|
};
|
1947
1985
|
|