Index: sdk/lib/html/dartium/html_dartium.dart |
diff --git a/sdk/lib/html/dartium/html_dartium.dart b/sdk/lib/html/dartium/html_dartium.dart |
index 7a17fb68de4620c73b5f9dba59f50447450b56d6..92c3755a5f8a3aed4a37150a7712fc75a69d3263 100644 |
--- a/sdk/lib/html/dartium/html_dartium.dart |
+++ b/sdk/lib/html/dartium/html_dartium.dart |
@@ -101,7 +101,7 @@ HtmlDocument get document { |
@DocsEditable() |
@DomName('AbstractWorker') |
-class AbstractWorker extends NativeFieldWrapperClass2 implements EventTarget { |
+abstract class AbstractWorker extends NativeFieldWrapperClass2 implements EventTarget { |
// To suppress missing implicit constructor warnings. |
factory AbstractWorker._() { throw new UnsupportedError("Not supported"); } |
@@ -304,6 +304,12 @@ class AnchorElement extends HtmlElement implements UrlUtils { |
@DocsEditable() |
void set href(String value) native "HTMLAnchorElement_href_Setter"; |
+ @DomName('HTMLAnchorElement.origin') |
+ @DocsEditable() |
+ // WebKit only |
+ @Experimental() // non-standard |
+ String get origin native "HTMLAnchorElement_origin_Getter"; |
+ |
@DomName('HTMLAnchorElement.password') |
@DocsEditable() |
@Experimental() // untriaged |
@@ -8291,13 +8297,16 @@ class DocumentFragment extends Node implements ParentNode { |
validator: validator, treeSanitizer: treeSanitizer); |
} |
- List<Element> _children; |
+ HtmlCollection get _children => throw new UnimplementedError( |
+ 'Use _docChildren instead'); |
+ |
+ 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) { |
@@ -8427,7 +8436,7 @@ class DocumentFragment extends Node implements ParentNode { |
@DomName('DocumentType') |
// http://www.w3.org/TR/DOM-Level-3-Core/core.html#ID-412266927 |
@deprecated // stable |
-class DocumentType extends Node implements ChildNode { |
+abstract class DocumentType extends Node implements ChildNode { |
// To suppress missing implicit constructor warnings. |
factory DocumentType._() { throw new UnsupportedError("Not supported"); } |
@@ -11186,8 +11195,6 @@ abstract class Element extends Node implements GlobalEventHandlers, ParentNode, |
bool hidden; |
- InputMethodContext get inputMethodContext; |
- |
bool get isContentEditable; |
String lang; |
@@ -15596,10 +15603,6 @@ class HtmlFormControlsCollection extends HtmlCollection { |
// To suppress missing implicit constructor warnings. |
factory HtmlFormControlsCollection._() { throw new UnsupportedError("Not supported"); } |
- @DomName('HTMLFormControlsCollection.__getter__') |
- @DocsEditable() |
- Node __getter__(int index) native "HTMLFormControlsCollection___getter___Callback"; |
- |
@DomName('HTMLFormControlsCollection.namedItem') |
@DocsEditable() |
Node namedItem(String name) native "HTMLFormControlsCollection_namedItem_Callback"; |
@@ -28922,13 +28925,13 @@ class Url extends NativeFieldWrapperClass2 implements UrlUtils { |
if ((blob_OR_source_OR_stream is Blob || blob_OR_source_OR_stream == null)) { |
return _createObjectURL_1(blob_OR_source_OR_stream); |
} |
- if ((blob_OR_source_OR_stream is MediaStream || blob_OR_source_OR_stream == null)) { |
+ if ((blob_OR_source_OR_stream is MediaSource || blob_OR_source_OR_stream == null)) { |
return _createObjectURL_2(blob_OR_source_OR_stream); |
} |
- if ((blob_OR_source_OR_stream is MediaSource || blob_OR_source_OR_stream == null)) { |
+ if ((blob_OR_source_OR_stream is _WebKitMediaSource || blob_OR_source_OR_stream == null)) { |
return _createObjectURL_3(blob_OR_source_OR_stream); |
} |
- if ((blob_OR_source_OR_stream is _WebKitMediaSource || blob_OR_source_OR_stream == null)) { |
+ if ((blob_OR_source_OR_stream is MediaStream || blob_OR_source_OR_stream == null)) { |
return _createObjectURL_4(blob_OR_source_OR_stream); |
} |
throw new ArgumentError("Incorrect number or type of arguments"); |
@@ -31603,6 +31606,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 |
@@ -31641,11 +31653,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 |
@@ -31686,11 +31693,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 |
@@ -33920,6 +33922,10 @@ abstract class _XMLHttpRequestProgressEvent extends ProgressEvent { |
*/ |
class _WrappedEvent implements Event { |
final Event wrapped; |
+ |
+ /** The CSS selector involved with event delegation. */ |
+ String _selector; |
+ |
_WrappedEvent(this.wrapped); |
bool get bubbles => wrapped.bubbles; |
@@ -33957,6 +33963,43 @@ 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; |
+ |
+ dynamic get _get_currentTarget => wrapped._get_currentTarget; |
+ |
+ dynamic get _get_target => wrapped._get_target; |
} |
// 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 |
@@ -34290,7 +34333,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. |
/** |
@@ -35363,6 +35406,9 @@ 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. |
@@ -38088,6 +38134,17 @@ 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(); |
+ dynamic get _get_view => throw new UnimplementedError(); |
} |
// 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 |
@@ -38585,7 +38642,7 @@ class _Utils { |
// TODO(vsm): Move these checks into native code. |
ClassMirror cls = reflectClass(type); |
if (_isBuiltinType(cls)) { |
- throw new UnsupportedError("Invalid custom element from ${cls.owner.uri}."); |
+ throw new UnsupportedError("Invalid custom element from ${(cls.owner as LibraryMirror).uri}."); |
} |
var className = MirrorSystem.getName(cls.simpleName); |
var createdConstructor = cls.declarations[new Symbol('$className.created')]; |