Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(292)

Unified Diff: sdk/lib/html/dart2js/html_dart2js.dart

Issue 11612020: Revert "Switch libraries to using new tags." (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 8 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « sdk/lib/crypto/sha256.dart ('k') | sdk/lib/html/doc/html.dartdoc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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" {
« no previous file with comments | « sdk/lib/crypto/sha256.dart ('k') | sdk/lib/html/doc/html.dartdoc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698