Index: sdk/lib/html/dart2js/html_dart2js.dart |
diff --git a/sdk/lib/html/dart2js/html_dart2js.dart b/sdk/lib/html/dart2js/html_dart2js.dart |
index a57e7903dd79e272e75e3be16a8355a1f4942edc..d931b9543845b6c9caea55240ee013d01e48a48b 100644 |
--- a/sdk/lib/html/dart2js/html_dart2js.dart |
+++ b/sdk/lib/html/dart2js/html_dart2js.dart |
@@ -785,12 +785,54 @@ class CanvasElement extends Element native "*HTMLCanvasElement" { |
return e; |
} |
+ /// The height of this canvas element in CSS pixels. |
/// @domName HTMLCanvasElement.height; @docsEditable true |
int height; |
+ /// The width of this canvas element in CSS pixels. |
/// @domName HTMLCanvasElement.width; @docsEditable true |
int width; |
+ /** |
+ * Returns a data URI containing a representation of the image in the |
+ * format specified by type (defaults to 'image/png'). |
+ * |
+ * Data Uri format is as follow `data:[<MIME-type>][;charset=<encoding>][;base64],<data>` |
+ * |
+ * Optional parameter [quality] in the range of 0.0 and 1.0 can be used when requesting [type] |
+ * 'image/jpeg' or 'image/webp'. If [quality] is not passed the default |
+ * value is used. Note: the default value varies by browser. |
+ * |
+ * If the height or width of this canvas element is 0, then 'data:' is returned, |
+ * representing no data. |
+ * |
+ * If the type requested is not 'image/png', and the returned value is |
+ * 'data:image/png', then the requested type is not supported. |
+ * |
+ * Example usage: |
+ * |
+ * CanvasElement canvas = new CanvasElement(); |
+ * var ctx = canvas.context2d |
+ * ..fillStyle = "rgb(200,0,0)" |
+ * ..fillRect(10, 10, 55, 50); |
+ * var dataUrl = canvas.toDataURL("image/jpeg", 0.95); |
+ * // The Data Uri would look similar to |
+ * // 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA |
+ * // AAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO |
+ * // 9TXL0Y4OHwAAAABJRU5ErkJggg==' |
+ * //Create a new image element from the data URI. |
+ * var img = new ImageElement(); |
+ * img.src = dataUrl; |
+ * document.body.children.add(img); |
+ * |
+ * See also: |
+ * |
+ * * [Data URI Scheme](http://en.wikipedia.org/wiki/Data_URI_scheme) from Wikipedia. |
+ * |
+ * * [HTMLCanvasElement](https://developer.mozilla.org/en-US/docs/DOM/HTMLCanvasElement) from MDN. |
+ * |
+ * * [toDataUrl](http://dev.w3.org/html5/spec/the-canvas-element.html#dom-canvas-todataurl) from W3C. |
+ */ |
/// @domName HTMLCanvasElement.toDataURL; @docsEditable true |
@JSName('toDataURL') |
String toDataUrl(String type, [num quality]) native; |
@@ -804,9 +846,47 @@ class CanvasElement extends Element native "*HTMLCanvasElement" { |
// BSD-style license that can be found in the LICENSE file. |
+/** |
+ * An opaque canvas object representing a gradient. |
+ * |
+ * Created by calling [createLinearGradient] or [createRadialGradient] on a |
+ * [CanvasRenderingContext2D] object. |
+ * |
+ * Example usage: |
+ * |
+ * var canvas = new CanvasElement(width: 600, height: 600); |
+ * var ctx = canvas.context2d; |
+ * ctx.clearRect(0, 0, 600, 600); |
+ * ctx.save(); |
+ * // Create radial gradient. |
+ * CanvasGradient gradient = ctx.createRadialGradient(0, 0, 0, 0, 0, 600); |
+ * gradient.addColorStop(0, '#000'); |
+ * gradient.addColorStop(1, 'rgb(255, 255, 255)'); |
+ * // Assign gradients to fill. |
+ * ctx.fillStyle = gradient; |
+ * // Draw a rectangle with a gradient fill. |
+ * ctx.fillRect(0, 0, 600, 600); |
+ * ctx.save(); |
+ * document.body.children.add(canvas); |
+ * |
+ * See also: |
+ * |
+ * * [CanvasGradient](https://developer.mozilla.org/en-US/docs/DOM/CanvasGradient) from MDN. |
+ * * [CanvasGradient](http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#canvasgradient) from whatwg. |
+ * * [CanvasGradient](http://www.w3.org/TR/2010/WD-2dcontext-20100304/#canvasgradient) from W3C. |
+ */ |
/// @domName CanvasGradient; @docsEditable true |
class CanvasGradient native "*CanvasGradient" { |
+ /** |
+ * Adds a color stop to this gradient at the offset. |
+ * |
+ * The [offset] can range between 0.0 and 1.0. |
+ * |
+ * See also: |
+ * |
+ * * [Multiple Color Stops](https://developer.mozilla.org/en-US/docs/CSS/linear-gradient#Gradient_with_multiple_color_stops) from MDN. |
+ */ |
/// @domName CanvasGradient.addColorStop; @docsEditable true |
void addColorStop(num offset, String color) native; |
} |
@@ -815,6 +895,33 @@ class CanvasGradient native "*CanvasGradient" { |
// BSD-style license that can be found in the LICENSE file. |
+/** |
+ * An opaque object representing a pattern of image, canvas, or video. |
+ * |
+ * Created by calling [createPattern] on a [CanvasRenderingContext2D] object. |
+ * |
+ * Example usage: |
+ * |
+ * var canvas = new CanvasElement(width: 600, height: 600); |
+ * var ctx = canvas.context2d; |
+ * var img = new ImageElement(); |
+ * // Image src needs to be loaded before pattern is applied. |
+ * img.on.load.add((event) { |
+ * // When the image is loaded, create a pattern |
+ * // from the ImageElement. |
+ * CanvasPattern pattern = ctx.createPattern(img, 'repeat'); |
+ * ctx.rect(0, 0, canvas.width, canvas.height); |
+ * ctx.fillStyle = pattern; |
+ * ctx.fill(); |
+ * }); |
+ * img.src = "images/foo.jpg"; |
+ * document.body.children.add(canvas); |
+ * |
+ * See also: |
+ * * [CanvasPattern](https://developer.mozilla.org/en-US/docs/DOM/CanvasPattern) from MDN. |
+ * * [CanvasPattern](http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#canvaspattern) from whatwg. |
+ * * [CanvasPattern](http://www.w3.org/TR/2010/WD-2dcontext-20100304/#canvaspattern) from W3C. |
+ */ |
/// @domName CanvasPattern; @docsEditable true |
class CanvasPattern native "*CanvasPattern" { |
} |
@@ -823,9 +930,16 @@ class CanvasPattern native "*CanvasPattern" { |
// BSD-style license that can be found in the LICENSE file. |
+/** |
+ * A rendering context for a canvas element. |
+ * |
+ * This context is extended by [CanvasRenderingContext2D] and |
+ * [WebGLRenderingContext]. |
+ */ |
/// @domName CanvasRenderingContext; @docsEditable true |
class CanvasRenderingContext native "*CanvasRenderingContext" { |
+ /// Reference to the canvas element to which this context belongs. |
/// @domName CanvasRenderingContext.canvas; @docsEditable true |
final CanvasElement canvas; |
} |
@@ -5585,6 +5699,27 @@ class DirectoryReaderSync native "*DirectoryReaderSync" { |
// BSD-style license that can be found in the LICENSE file. |
+/** |
+ * Represents an HTML <div> element. |
+ * |
+ * The [DivElement] is a generic container for content and does not have any |
+ * special significance. It is functionally similar to [SpanElement]. |
+ * |
+ * The [DivElement] is a block-level element, as opposed to [SpanElement], |
+ * which is an inline-level element. |
+ * |
+ * Example usage: |
+ * |
+ * DivElement div = new DivElement(); |
+ * div.text = 'Here's my new DivElem |
+ * document.body.elements.add(elem); |
+ * |
+ * See also: |
+ * |
+ * * [HTML <div> element](http://www.w3.org/TR/html-markup/div.html) from W3C. |
+ * * [Block-level element](http://www.w3.org/TR/CSS2/visuren.html#block-boxes) from W3C. |
+ * * [Inline-level element](http://www.w3.org/TR/CSS2/visuren.html#inline-boxes) from W3C. |
+ */ |
/// @domName HTMLDivElement; @docsEditable true |
class DivElement extends Element native "*HTMLDivElement" { |
@@ -5614,6 +5749,7 @@ class Document extends Node native "*Document" |
DocumentEvents get on => |
new DocumentEvents(this); |
+ /// Moved to [HtmlDocument]. |
/// @domName Document.body; @docsEditable true |
@JSName('body') |
Element $dom_body; |
@@ -5624,6 +5760,7 @@ class Document extends Node native "*Document" |
/// @domName Document.cookie; @docsEditable true |
String cookie; |
+ /// Returns the [Window] associated with the document. |
/// @domName Document.defaultView; @docsEditable true |
Window get window => _convertNativeToDart_Window(this._window); |
@JSName('defaultView') |
@@ -5636,6 +5773,7 @@ class Document extends Node native "*Document" |
/// @domName Document.domain; @docsEditable true |
final String domain; |
+ /// Moved to [HtmlDocument]. |
/// @domName Document.head; @docsEditable true |
@JSName('head') |
final HeadElement $dom_head; |
@@ -5643,6 +5781,7 @@ class Document extends Node native "*Document" |
/// @domName Document.implementation; @docsEditable true |
final DomImplementation implementation; |
+ /// Moved to [HtmlDocument]. |
/// @domName Document.lastModified; @docsEditable true |
@JSName('lastModified') |
final String $dom_lastModified; |
@@ -5654,6 +5793,7 @@ class Document extends Node native "*Document" |
/// @domName Document.readyState; @docsEditable true |
final String readyState; |
+ /// Moved to [HtmlDocument]. |
/// @domName Document.referrer; @docsEditable true |
@JSName('referrer') |
final String $dom_referrer; |
@@ -5662,39 +5802,48 @@ class Document extends Node native "*Document" |
@JSName('selectedStylesheetSet') |
String $dom_selectedStylesheetSet; |
+ /// Moved to [HtmlDocument]. |
/// @domName Document.styleSheets; @docsEditable true |
@JSName('styleSheets') |
@Returns('_StyleSheetList') @Creates('_StyleSheetList') |
final List<StyleSheet> $dom_styleSheets; |
+ /// Moved to [HtmlDocument]. |
/// @domName Document.title; @docsEditable true |
@JSName('title') |
String $dom_title; |
+ /// Moved to [HtmlDocument]. |
/// @domName Document.webkitFullscreenElement; @docsEditable true |
@JSName('webkitFullscreenElement') |
final Element $dom_webkitFullscreenElement; |
+ /// Moved to [HtmlDocument]. |
/// @domName Document.webkitFullscreenEnabled; @docsEditable true |
@JSName('webkitFullscreenEnabled') |
final bool $dom_webkitFullscreenEnabled; |
+ /// Moved to [HtmlDocument]. |
/// @domName Document.webkitHidden; @docsEditable true |
@JSName('webkitHidden') |
final bool $dom_webkitHidden; |
+ /// Moved to [HtmlDocument]. |
/// @domName Document.webkitIsFullScreen; @docsEditable true |
@JSName('webkitIsFullScreen') |
final bool $dom_webkitIsFullScreen; |
+ /// Moved to [HtmlDocument]. |
/// @domName Document.webkitPointerLockElement; @docsEditable true |
@JSName('webkitPointerLockElement') |
final Element $dom_webkitPointerLockElement; |
+ /// Moved to [HtmlDocument]. |
/// @domName Document.webkitVisibilityState; @docsEditable true |
@JSName('webkitVisibilityState') |
final String $dom_webkitVisibilityState; |
+ /// Use the [Range] constructor instead. |
/// @domName Document.caretRangeFromPoint; @docsEditable true |
@JSName('caretRangeFromPoint') |
Range $dom_caretRangeFromPoint(int x, int y) native; |
@@ -5706,6 +5855,7 @@ class Document extends Node native "*Document" |
/// @domName Document.createDocumentFragment; @docsEditable true |
DocumentFragment createDocumentFragment() native; |
+ /// Deprecated: use new Element.tag(tagName) instead. |
/// @domName Document.createElement; @docsEditable true |
@JSName('createElement') |
Element $dom_createElement(String tagName) native; |
@@ -5734,10 +5884,12 @@ class Document extends Node native "*Document" |
@JSName('createTouch') |
Touch _$dom_createTouch_1(LocalWindow window, target, identifier, pageX, pageY, screenX, screenY, webkitRadiusX, webkitRadiusY, webkitRotationAngle, webkitForce) native; |
+ /// Use the [TouchList] constructor isntead. |
/// @domName Document.createTouchList; @docsEditable true |
@JSName('createTouchList') |
TouchList $dom_createTouchList() native; |
+ /// Moved to [HtmlDocument]. |
/// @domName Document.elementFromPoint; @docsEditable true |
@JSName('elementFromPoint') |
Element $dom_elementFromPoint(int x, int y) native; |
@@ -5749,6 +5901,7 @@ class Document extends Node native "*Document" |
@JSName('getCSSCanvasContext') |
CanvasRenderingContext $dom_getCssCanvasContext(String contextId, String name, int width, int height) native; |
+ /// Deprecated: use query("#$elementId") instead. |
/// @domName Document.getElementById; @docsEditable true |
@JSName('getElementById') |
Element $dom_getElementById(String elementId) native; |
@@ -5783,23 +5936,28 @@ class Document extends Node native "*Document" |
/// @domName Document.queryCommandValue; @docsEditable true |
String queryCommandValue(String command) native; |
+ /// Deprecated: renamed to the shorter name [query]. |
/// @domName Document.querySelector; @docsEditable true |
@JSName('querySelector') |
Element $dom_querySelector(String selectors) native; |
+ /// Deprecated: use query("#$elementId") instead. |
/// @domName Document.querySelectorAll; @docsEditable true |
@JSName('querySelectorAll') |
@Returns('NodeList') @Creates('NodeList') |
List<Node> $dom_querySelectorAll(String selectors) native; |
+ /// Moved to [HtmlDocument]. |
/// @domName Document.webkitCancelFullScreen; @docsEditable true |
@JSName('webkitCancelFullScreen') |
void $dom_webkitCancelFullScreen() native; |
+ /// Moved to [HtmlDocument]. |
/// @domName Document.webkitExitFullscreen; @docsEditable true |
@JSName('webkitExitFullscreen') |
void $dom_webkitExitFullscreen() native; |
+ /// Moved to [HtmlDocument]. |
/// @domName Document.webkitExitPointerLock; @docsEditable true |
@JSName('webkitExitPointerLock') |
void $dom_webkitExitPointerLock() native; |
@@ -10027,9 +10185,28 @@ class HttpRequest extends EventTarget native "*XMLHttpRequest" { |
onComplete); |
+ /** |
+ * General constructor for any type of request (GET, POST, etc). |
+ * |
+ * This call is used in conjunction with [open]: |
+ * |
+ * var request = new HttpRequest(); |
+ * request.open('GET', 'http://dartlang.org') |
+ * request.on.load.add((event) => print('Request complete')); |
+ * |
+ * is the (more verbose) equivalent of |
+ * |
+ * var request = new HttpRequest.get('http://dartlang.org', |
+ * (event) => print('Request complete')); |
+ */ |
///@docsEditable true |
factory HttpRequest() => _HttpRequestFactoryProvider.createHttpRequest(); |
+ /** |
+ * Get the set of [HttpRequestEvents] that this request can respond to. |
+ * Usually used when adding an EventListener, such as in |
+ * `document.window.on.keyDown.add((e) => print('keydown happened'))`. |
+ */ |
/// @domName EventTarget.addEventListener, EventTarget.removeEventListener, EventTarget.dispatchEvent; @docsEditable true |
HttpRequestEvents get on => |
new HttpRequestEvents(this); |
@@ -10044,35 +10221,119 @@ class HttpRequest extends EventTarget native "*XMLHttpRequest" { |
static const int UNSENT = 0; |
+ /** |
+ * Indicator of the current state of the request: |
+ * |
+ * <table> |
+ * <tr> |
+ * <td>Value</td> |
+ * <td>State</td> |
+ * <td>Meaning</td> |
+ * </tr> |
+ * <tr> |
+ * <td>0</td> |
+ * <td>unsent</td> |
+ * <td><code>open()</code> has not yet been called</td> |
+ * </tr> |
+ * <tr> |
+ * <td>1</td> |
+ * <td>opened</td> |
+ * <td><code>send()</code> has not yet been called</td> |
+ * </tr> |
+ * <tr> |
+ * <td>2</td> |
+ * <td>headers received</td> |
+ * <td><code>sent()</code> has been called; response headers and <code>status</code> are available</td> |
+ * </tr> |
+ * <tr> |
+ * <td>3</td> <td>loading</td> <td><code>responseText</code> holds some data</td> |
+ * </tr> |
+ * <tr> |
+ * <td>4</td> <td>done</td> <td>request is complete</td> |
+ * </tr> |
+ * </table> |
+ */ |
/// @domName XMLHttpRequest.readyState; @docsEditable true |
final int readyState; |
+ /** |
+ * The data received as a reponse from the request. |
+ * |
+ * The data could be in the |
+ * form of a [String], [ArrayBuffer], [Document], [Blob], or json (also a |
+ * [String]). `null` indicates request failure. |
+ */ |
/// @domName XMLHttpRequest.response; @docsEditable true |
@Creates('ArrayBuffer|Blob|Document|=Object|=List|String|num') |
final Object response; |
+ /** |
+ * The response in string form or null on failure. |
+ */ |
/// @domName XMLHttpRequest.responseText; @docsEditable true |
final String responseText; |
+ /** |
+ * [String] telling the server the desired response format. |
+ * |
+ * Default is `String`. |
+ * Other options are one of 'arraybuffer', 'blob', 'document', 'json', |
+ * 'text'. Some newer browsers will throw NS_ERROR_DOM_INVALID_ACCESS_ERR if |
+ * `responseType` is set while performing a synchronous request. |
+ * |
+ * See also: [MDN responseType](https://developer.mozilla.org/en-US/docs/DOM/XMLHttpRequest#responseType) |
+ */ |
/// @domName XMLHttpRequest.responseType; @docsEditable true |
String responseType; |
+ /** |
+ * The request response, or null on failure. |
+ * |
+ * The response is processed as |
+ * `text/xml` stream, unless responseType = 'document' and the request is |
+ * synchronous. |
+ */ |
/// @domName XMLHttpRequest.responseXML; @docsEditable true |
@JSName('responseXML') |
final Document responseXml; |
+ /** |
+ * The http result code from the request (200, 404, etc). |
+ * See also: [Http Status Codes](http://en.wikipedia.org/wiki/List_of_HTTP_status_codes) |
+ */ |
/// @domName XMLHttpRequest.status; @docsEditable true |
final int status; |
+ /** |
+ * The request response string (such as "200 OK"). |
+ * See also: [Http Status Codes](http://en.wikipedia.org/wiki/List_of_HTTP_status_codes) |
+ */ |
/// @domName XMLHttpRequest.statusText; @docsEditable true |
final String statusText; |
+ /** |
+ * [EventTarget] that can hold listeners to track the progress of the request. |
+ * The events fired will be members of [HttpRequestUploadEvents]. |
+ */ |
/// @domName XMLHttpRequest.upload; @docsEditable true |
final HttpRequestUpload upload; |
+ /** |
+ * True if cross-site requests should use credentials such as cookies |
+ * or authorization headers; false otherwise. |
+ * |
+ * This value is ignored for same-site requests. |
+ */ |
/// @domName XMLHttpRequest.withCredentials; @docsEditable true |
bool withCredentials; |
+ /** |
+ * Stop the current request. |
+ * |
+ * The request can only be stopped if readyState is `HEADERS_RECIEVED` or |
+ * `LOADING`. If this method is not in the process of being sent, the method |
+ * has no effect. |
+ */ |
/// @domName XMLHttpRequest.abort; @docsEditable true |
void abort() native; |
@@ -10084,15 +10345,48 @@ class HttpRequest extends EventTarget native "*XMLHttpRequest" { |
@JSName('dispatchEvent') |
bool $dom_dispatchEvent(Event evt) native; |
+ /** |
+ * Retrieve all the response headers from a request. |
+ * |
+ * `null` if no headers have been received. For multipart requests, |
+ * `getAllResponseHeaders` will return the response headers for the current |
+ * part of the request. |
+ * |
+ * See also [HTTP response headers](http://en.wikipedia.org/wiki/List_of_HTTP_header_fields#Responses) |
+ * for a list of common response headers. |
+ */ |
/// @domName XMLHttpRequest.getAllResponseHeaders; @docsEditable true |
String getAllResponseHeaders() native; |
+ /** |
+ * Return the response header named `header`, or `null` if not found. |
+ * |
+ * See also [HTTP response headers](http://en.wikipedia.org/wiki/List_of_HTTP_header_fields#Responses) |
+ * for a list of common response headers. |
+ */ |
/// @domName XMLHttpRequest.getResponseHeader; @docsEditable true |
String getResponseHeader(String header) native; |
+ /** |
+ * Specify the desired `url`, and `method` to use in making the request. |
+ * |
+ * By default the request is done asyncronously, with no user or password |
+ * authentication information. If `async` is false, the request will be send |
+ * synchronously. |
+ * |
+ * Calling `open` again on a currently active request is equivalent to |
+ * calling `abort`. |
+ */ |
/// @domName XMLHttpRequest.open; @docsEditable true |
void open(String method, String url, [bool async, String user, String password]) native; |
+ /** |
+ * Specify a particular MIME type (such as `text/xml`) desired for the |
+ * response. |
+ * |
+ * This value must be set before the request has been sent. See also the list |
+ * of [common MIME types](http://en.wikipedia.org/wiki/Internet_media_type#List_of_common_media_types) |
+ */ |
/// @domName XMLHttpRequest.overrideMimeType; @docsEditable true |
void overrideMimeType(String override) native; |
@@ -10100,37 +10394,89 @@ class HttpRequest extends EventTarget native "*XMLHttpRequest" { |
@JSName('removeEventListener') |
void $dom_removeEventListener(String type, EventListener listener, [bool useCapture]) native; |
+ /** |
+ * Send the request with any given `data`. |
+ * |
+ * See also: |
+ * [send() docs](https://developer.mozilla.org/en-US/docs/DOM/XMLHttpRequest#send()) |
+ * from MDN. |
+ */ |
/// @domName XMLHttpRequest.send; @docsEditable true |
void send([data]) native; |
+ /** Sets HTTP `header` to `value`. */ |
/// @domName XMLHttpRequest.setRequestHeader; @docsEditable true |
void setRequestHeader(String header, String value) native; |
} |
+/** |
+ * A class that supports listening for and dispatching events that can fire when |
+ * making an HTTP request. |
+ * |
+ * Here's an example of adding an event handler that executes once an HTTP |
+ * request has fully loaded: |
+ * |
+ * httpRequest.on.loadEnd.add((e) => myCustomLoadEndHandler(e)); |
+ * |
+ * Each property of this class is a read-only pointer to an [EventListenerList]. |
+ * That list holds all of the [EventListener]s that have registered for that |
+ * particular type of event that fires from an HttpRequest. |
+ */ |
/// @docsEditable true |
class HttpRequestEvents extends Events { |
/// @docsEditable true |
HttpRequestEvents(EventTarget _ptr) : super(_ptr); |
+ /** |
+ * Event listeners to be notified when request has been aborted, |
+ * generally due to calling `httpRequest.abort()`. |
+ */ |
/// @docsEditable true |
EventListenerList get abort => this['abort']; |
+ /** |
+ * Event listeners to be notified when a request has failed, such as when a |
+ * cross-domain error occurred or the file wasn't found on the server. |
+ */ |
/// @docsEditable true |
EventListenerList get error => this['error']; |
+ /** |
+ * Event listeners to be notified once the request has completed |
+ * *successfully*. |
+ */ |
/// @docsEditable true |
EventListenerList get load => this['load']; |
+ /** |
+ * Event listeners to be notified once the request has completed (on |
+ * either success or failure). |
+ */ |
/// @docsEditable true |
EventListenerList get loadEnd => this['loadend']; |
+ /** |
+ * Event listeners to be notified when the request starts, once |
+ * `httpRequest.send()` has been called. |
+ */ |
/// @docsEditable true |
EventListenerList get loadStart => this['loadstart']; |
+ /** |
+ * Event listeners to be notified when data for the request |
+ * is being sent or loaded. |
+ * |
+ * Progress events are fired every 50ms or for every byte transmitted, |
+ * whichever is less frequent. |
+ */ |
/// @docsEditable true |
EventListenerList get progress => this['progress']; |
+ /** |
+ * Event listeners to be notified every time the [HttpRequest] |
+ * object's `readyState` changes values. |
+ */ |
/// @docsEditable true |
EventListenerList get readyStateChange => this['readystatechange']; |
} |
@@ -13207,6 +13553,16 @@ class MemoryInfo native "*MemoryInfo" { |
// BSD-style license that can be found in the LICENSE file. |
+/** |
+ * An HTML <menu> element. |
+ * |
+ * A <menu> element represents an unordered list of menu commands. |
+ * |
+ * See also: |
+ * |
+ * * [Menu Element](https://developer.mozilla.org/en-US/docs/HTML/Element/menu) from MDN. |
+ * * [Menu Element](http://www.w3.org/TR/html5/the-menu-element.html#the-menu-element) from the W3C. |
+ */ |
/// @domName HTMLMenuElement; @docsEditable true |
class MenuElement extends Element native "*HTMLMenuElement" { |