| 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 729b216f68e7bbc080bade8b9a3097590e3d1e1e..aabef473b7a5ff790bc32e994e25a6d86b1410b2 100644
|
| --- a/sdk/lib/html/dart2js/html_dart2js.dart
|
| +++ b/sdk/lib/html/dart2js/html_dart2js.dart
|
| @@ -111,7 +111,7 @@ abstract class _EntryArray implements List<Entry> native "EntryArray" {}
|
|
|
| @DocsEditable()
|
| @DomName('AbstractWorker')
|
| -class AbstractWorker extends Interceptor implements EventTarget native "AbstractWorker" {
|
| +abstract class AbstractWorker extends Interceptor implements EventTarget native "AbstractWorker" {
|
| // To suppress missing implicit constructor warnings.
|
| factory AbstractWorker._() { throw new UnsupportedError("Not supported"); }
|
|
|
| @@ -266,6 +266,12 @@ class AnchorElement extends HtmlElement implements UrlUtils native "HTMLAnchorEl
|
| @DocsEditable()
|
| String href;
|
|
|
| + @DomName('HTMLAnchorElement.origin')
|
| + @DocsEditable()
|
| + // WebKit only
|
| + @Experimental() // non-standard
|
| + final String origin;
|
| +
|
| @DomName('HTMLAnchorElement.password')
|
| @DocsEditable()
|
| @Experimental() // untriaged
|
| @@ -7843,16 +7849,19 @@ class DocumentFragment extends Node implements ParentNode native "DocumentFragme
|
| validator: validator, treeSanitizer: treeSanitizer);
|
| }
|
|
|
| + HtmlCollection get _children => throw new UnimplementedError(
|
| + 'Use _docChildren instead');
|
| +
|
| // Native field is used only by Dart code so does not lead to instantiation
|
| // of native classes
|
| @Creates('Null')
|
| - List<Element> _children;
|
| + List<Element> _docChildren;
|
|
|
| List<Element> get children {
|
| - if (_children == null) {
|
| - _children = new FilteredElementList(this);
|
| + if (_docChildren == null) {
|
| + _docChildren = new FilteredElementList(this);
|
| }
|
| - return _children;
|
| + return _docChildren;
|
| }
|
|
|
| void set children(List<Element> value) {
|
| @@ -7988,7 +7997,7 @@ class DocumentFragment extends Node implements ParentNode native "DocumentFragme
|
| @DomName('DocumentType')
|
| // http://www.w3.org/TR/DOM-Level-3-Core/core.html#ID-412266927
|
| @deprecated // stable
|
| -class DocumentType extends Node implements ChildNode native "DocumentType" {
|
| +abstract class DocumentType extends Node implements ChildNode {
|
| // To suppress missing implicit constructor warnings.
|
| factory DocumentType._() { throw new UnsupportedError("Not supported"); }
|
|
|
| @@ -10901,19 +10910,6 @@ abstract class Element extends Node implements GlobalEventHandlers, ParentNode,
|
| @DocsEditable()
|
| bool hidden;
|
|
|
| - /**
|
| - * The current state of IME composition.
|
| - *
|
| - * ## Other resources
|
| - *
|
| - * * [Input method editor specification]
|
| - * (http://www.w3.org/TR/ime-api/) from W3C.
|
| - */
|
| - @DomName('Element.inputMethodContext')
|
| - @DocsEditable()
|
| - @Experimental() // untriaged
|
| - final InputMethodContext inputMethodContext;
|
| -
|
| @DomName('Element.isContentEditable')
|
| @DocsEditable()
|
| final bool isContentEditable;
|
| @@ -29177,6 +29173,15 @@ class _BeforeUnloadEventStreamProvider implements
|
| String getEventType(EventTarget target) {
|
| return _eventType;
|
| }
|
| +
|
| + ElementStream<BeforeUnloadEvent> forElement(Element e, {bool useCapture: false}) {
|
| + return new _ElementEventStreamImpl(e, _eventType, useCapture);
|
| + }
|
| +
|
| + ElementStream<BeforeUnloadEvent> _forElementList(ElementList e,
|
| + {bool useCapture: false}) {
|
| + return new _ElementListEventStreamImpl(e, _eventType, useCapture);
|
| + }
|
| }
|
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
|
| // for details. All rights reserved. Use of this source code is governed by a
|
| @@ -29206,11 +29211,6 @@ abstract class WindowEventHandlers extends EventTarget {
|
| // To suppress missing implicit constructor warnings.
|
| factory WindowEventHandlers._() { throw new UnsupportedError("Not supported"); }
|
|
|
| - @DomName('WindowEventHandlers.beforeunloadEvent')
|
| - @DocsEditable()
|
| - @Experimental() // untriaged
|
| - static const EventStreamProvider<Event> beforeUnloadEvent = const EventStreamProvider<Event>('beforeunload');
|
| -
|
| @DomName('WindowEventHandlers.hashchangeEvent')
|
| @DocsEditable()
|
| @Experimental() // untriaged
|
| @@ -29251,11 +29251,6 @@ abstract class WindowEventHandlers extends EventTarget {
|
| @Experimental() // untriaged
|
| static const EventStreamProvider<Event> unloadEvent = const EventStreamProvider<Event>('unload');
|
|
|
| - @DomName('WindowEventHandlers.onbeforeunload')
|
| - @DocsEditable()
|
| - @Experimental() // untriaged
|
| - Stream<Event> get onBeforeUnload => beforeUnloadEvent.forTarget(this);
|
| -
|
| @DomName('WindowEventHandlers.onhashchange')
|
| @DocsEditable()
|
| @Experimental() // untriaged
|
| @@ -31583,7 +31578,7 @@ abstract class CanvasImageSource {}
|
| * * [DOM Window](https://developer.mozilla.org/en-US/docs/DOM/window) from MDN.
|
| * * [Window](http://www.w3.org/TR/Window/) from the W3C.
|
| */
|
| -abstract class WindowBase implements EventTarget {
|
| +abstract class WindowBase {
|
| // Fields.
|
|
|
| /**
|
| @@ -32656,6 +32651,8 @@ class _CustomEventStreamProvider<T extends Event>
|
| String getEventType(EventTarget target) {
|
| return _eventTypeGetter(target);
|
| }
|
| +
|
| + String get _eventType => throw new UnsupportedError('Access type through getEventType method.');
|
| }
|
| // DO NOT EDIT- this file is generated from running tool/generator.sh.
|
|
|
| @@ -34890,6 +34887,10 @@ abstract class ReadyState {
|
| */
|
| class _WrappedEvent implements Event {
|
| final Event wrapped;
|
| +
|
| + /** The CSS selector involved with event delegation. */
|
| + String _selector;
|
| +
|
| _WrappedEvent(this.wrapped);
|
|
|
| bool get bubbles => wrapped.bubbles;
|
| @@ -34927,6 +34928,39 @@ class _WrappedEvent implements Event {
|
| void stopPropagation() {
|
| wrapped.stopPropagation();
|
| }
|
| +
|
| + /**
|
| + * A pointer to the element whose CSS selector matched within which an event
|
| + * was fired. If this Event was not associated with any Event delegation,
|
| + * accessing this value will throw an [UnsupportedError].
|
| + */
|
| + Element get matchingTarget {
|
| + if (_selector == null) {
|
| + throw new UnsupportedError('Cannot call matchingTarget if this Event did'
|
| + ' not arise as a result of event delegation.');
|
| + }
|
| + var currentTarget = this.currentTarget;
|
| + var target = this.target;
|
| + var matchedTarget;
|
| + do {
|
| + if (target.matches(_selector)) return target;
|
| + target = target.parent;
|
| + } while (target != null && target != currentTarget.parent);
|
| + throw new StateError('No selector matched for populating matchedTarget.');
|
| + }
|
| +
|
| + /**
|
| + * This event's path, taking into account shadow DOM.
|
| + *
|
| + * ## Other resources
|
| + *
|
| + * * [Shadow DOM extensions to Event]
|
| + * (http://w3c.github.io/webcomponents/spec/shadow/#extensions-to-event) from
|
| + * W3C.
|
| + */
|
| + // https://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/shadow/index.html#extensions-to-event
|
| + @Experimental()
|
| + List<Node> get path => wrapped.path;
|
| }
|
| // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
|
| // for details. All rights reserved. Use of this source code is governed by a
|
| @@ -35580,6 +35614,16 @@ class KeyEvent extends _WrappedEvent implements KeyboardEvent {
|
| throw new UnsupportedError(
|
| "Cannot initialize a KeyboardEvent from a KeyEvent.");
|
| }
|
| + int get _layerX => throw new UnsupportedError('Not applicable to KeyEvent');
|
| + int get _layerY => throw new UnsupportedError('Not applicable to KeyEvent');
|
| + int get _pageX => throw new UnsupportedError('Not applicable to KeyEvent');
|
| + int get _pageY => throw new UnsupportedError('Not applicable to KeyEvent');
|
| + @Experimental() // untriaged
|
| + bool getModifierState(String keyArgument) => throw new UnimplementedError();
|
| + @Experimental() // untriaged
|
| + int get location => throw new UnimplementedError();
|
| + @Experimental() // untriaged
|
| + bool get repeat => throw new UnimplementedError();
|
| }
|
| // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
|
| // for details. All rights reserved. Use of this source code is governed by a
|
|
|