| Index: client/html/frog/html_frog.dart
|
| diff --git a/client/html/frog/html_frog.dart b/client/html/frog/html_frog.dart
|
| index 410121dac94a99512f0d67839a3bcf11686bb6d4..71bb7e69a34ca9053df079263e56fddb28c4ecb6 100644
|
| --- a/client/html/frog/html_frog.dart
|
| +++ b/client/html/frog/html_frog.dart
|
| @@ -804,12 +804,6 @@ class _CSSPrimitiveValueImpl extends _CSSValueImpl implements CSSPrimitiveValue
|
|
|
| static final int CSS_URI = 20;
|
|
|
| - static final int CSS_VH = 27;
|
| -
|
| - static final int CSS_VMIN = 28;
|
| -
|
| - static final int CSS_VW = 26;
|
| -
|
| final int primitiveType;
|
|
|
| _CounterImpl getCounterValue() native;
|
| @@ -4692,6 +4686,8 @@ class _DocumentImpl extends _ElementImpl
|
|
|
| _ElementImpl _createElement(String tagName) native "return this.parentNode.createElement(tagName);";
|
|
|
| + _ElementImpl _createElementNS(String namespaceURI, String qualifiedName) native "return this.parentNode.createElementNS(namespaceURI, qualifiedName);";
|
| +
|
| _EventImpl _createEvent(String eventType) native "return this.parentNode.createEvent(eventType);";
|
|
|
| _RangeImpl createRange() native "return this.parentNode.createRange();";
|
| @@ -5222,6 +5218,13 @@ class _DynamicsCompressorNodeImpl extends _AudioNodeImpl implements DynamicsComp
|
|
|
| final _AudioParamImpl threshold;
|
| }
|
| +
|
| +class _EXTTextureFilterAnisotropicImpl implements EXTTextureFilterAnisotropic native "*EXTTextureFilterAnisotropic" {
|
| +
|
| + static final int MAX_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FF;
|
| +
|
| + static final int TEXTURE_MAX_ANISOTROPY_EXT = 0x84FE;
|
| +}
|
| // 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
|
| // BSD-style license that can be found in the LICENSE file.
|
| @@ -5321,7 +5324,7 @@ class _ChildrenElementList implements ElementList {
|
|
|
| Iterator<Element> iterator() => _toList().iterator();
|
|
|
| - void addAll(Collection<_ElementImpl> collection) {
|
| + void addAll(Collection<Element> collection) {
|
| for (_ElementImpl element in collection) {
|
| _element._appendChild(element);
|
| }
|
| @@ -6312,6 +6315,10 @@ class _FieldSetElementImpl extends _ElementImpl implements FieldSetElement nativ
|
|
|
| final _FormElementImpl form;
|
|
|
| + String name;
|
| +
|
| + final String type;
|
| +
|
| final String validationMessage;
|
|
|
| final _ValidityStateImpl validity;
|
| @@ -10026,8 +10033,58 @@ class _SVGDocumentImpl extends _DocumentImpl implements SVGDocument native "*SVG
|
|
|
| _EventImpl _createEvent(String eventType) native "return this.createEvent(eventType);";
|
| }
|
| +// 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
|
| +// BSD-style license that can be found in the LICENSE file.
|
| +
|
| +class _AttributeClassSet extends _CssClassSet {
|
| + _AttributeClassSet(element) : super(element);
|
| +
|
| + String _className() => _element.attributes['class'];
|
| +
|
| + void _write(Set s) {
|
| + _element.attributes['class'] = _formatSet(s);
|
| + }
|
| +}
|
|
|
| class _SVGElementImpl extends _ElementImpl implements SVGElement native "*SVGElement" {
|
| + Set<String> get classes() {
|
| + if (_cssClassSet === null) {
|
| + _cssClassSet = new _AttributeClassSet(_ptr);
|
| + }
|
| + return _cssClassSet;
|
| + }
|
| +
|
| + ElementList get elements() => new FilteredElementList(this);
|
| +
|
| + void set elements(Collection<Element> value) {
|
| + final elements = this.elements;
|
| + elements.clear();
|
| + elements.addAll(value);
|
| + }
|
| +
|
| + String get outerHTML() {
|
| + final container = new Element.tag("div");
|
| + final SVGElement clone = this.clone(true);
|
| + container.elements.add(clone);
|
| + return container.innerHTML;
|
| + }
|
| +
|
| + String get innerHTML() {
|
| + final container = new Element.tag("div");
|
| + final SVGElement clone = this.clone(true);
|
| + container.elements.addAll(clone.elements);
|
| + return container.innerHTML;
|
| + }
|
| +
|
| + void set innerHTML(String svg) {
|
| + final container = new Element.tag("div");
|
| + // Wrap the SVG string in <svg> so that SVGElements are created, rather than
|
| + // HTMLElements.
|
| + container.innerHTML = '<svg version="1.1">$svg</svg>';
|
| + this.elements = container.elements.first.elements;
|
| + }
|
| +
|
|
|
| // Shadowing definition.
|
| String get id() native "return this.id;";
|
| @@ -10039,6 +10096,7 @@ class _SVGElementImpl extends _ElementImpl implements SVGElement native "*SVGEle
|
| final _SVGElementImpl viewportElement;
|
|
|
| String xmlbase;
|
| +
|
| }
|
|
|
| class _SVGElementInstanceImpl extends _EventTargetImpl implements SVGElementInstance native "*SVGElementInstance" {
|
| @@ -13011,6 +13069,8 @@ class _SelectElementImpl extends _ElementImpl implements SelectElement native "*
|
|
|
| int selectedIndex;
|
|
|
| + final _HTMLCollectionImpl selectedOptions;
|
| +
|
| int size;
|
|
|
| final String type;
|
| @@ -13039,6 +13099,8 @@ class _ShadowElementImpl extends _ElementImpl implements ShadowElement native "*
|
|
|
| class _ShadowRootImpl extends _DocumentFragmentImpl implements ShadowRoot native "*ShadowRoot" {
|
|
|
| + final _ElementImpl activeElement;
|
| +
|
| final _ElementImpl host;
|
|
|
| String innerHTML;
|
| @@ -13713,8 +13775,6 @@ class _TrackElementImpl extends _ElementImpl implements TrackElement native "*HT
|
|
|
| static final int NONE = 0;
|
|
|
| - bool isDefault;
|
| -
|
| String kind;
|
|
|
| String label;
|
| @@ -17045,12 +17105,6 @@ interface CSSPrimitiveValue extends CSSValue {
|
|
|
| static final int CSS_URI = 20;
|
|
|
| - static final int CSS_VH = 27;
|
| -
|
| - static final int CSS_VMIN = 28;
|
| -
|
| - static final int CSS_VW = 26;
|
| -
|
| final int primitiveType;
|
|
|
| Counter getCounterValue();
|
| @@ -20338,10 +20392,11 @@ interface DocumentFragment extends Element default _DocumentFragmentFactoryProvi
|
|
|
| DocumentFragment.html(String html);
|
|
|
| - // TODO(nweiz): enable these when XML and/or SVG are ported
|
| + // TODO(nweiz): enable this when XML is ported
|
| // /** WARNING: Currently this doesn't work on Dartium (issue 649). */
|
| // DocumentFragment.xml(String xml);
|
| - // DocumentFragment.svg(String svg);
|
| +
|
| + DocumentFragment.svg(String svg);
|
|
|
| DocumentFragment clone(bool deep);
|
|
|
| @@ -20387,6 +20442,18 @@ interface DynamicsCompressorNode extends AudioNode {
|
|
|
| final AudioParam threshold;
|
| }
|
| +// 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
|
| +// BSD-style license that can be found in the LICENSE file.
|
| +
|
| +// WARNING: Do not edit - generated code.
|
| +
|
| +interface EXTTextureFilterAnisotropic {
|
| +
|
| + static final int MAX_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FF;
|
| +
|
| + static final int TEXTURE_MAX_ANISOTROPY_EXT = 0x84FE;
|
| +}
|
| // 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
|
| // BSD-style license that can be found in the LICENSE file.
|
| @@ -21221,6 +21288,10 @@ interface FieldSetElement extends Element {
|
|
|
| final FormElement form;
|
|
|
| + String name;
|
| +
|
| + final String type;
|
| +
|
| final String validationMessage;
|
|
|
| final ValidityState validity;
|
| @@ -24805,9 +24876,13 @@ interface SVGDocument extends Document {
|
| // for details. All rights reserved. Use of this source code is governed by a
|
| // BSD-style license that can be found in the LICENSE file.
|
|
|
| -// WARNING: Do not edit - generated code.
|
| +interface SVGElement extends Element default _SVGElementFactoryProvider {
|
| +
|
| + SVGElement.tag(String tag);
|
| + SVGElement.svg(String svg);
|
| +
|
| + SVGElement clone(bool deep);
|
|
|
| -interface SVGElement extends Element {
|
|
|
| String id;
|
|
|
| @@ -24816,6 +24891,7 @@ interface SVGElement extends Element {
|
| final SVGElement viewportElement;
|
|
|
| String xmlbase;
|
| +
|
| }
|
| // 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
|
| @@ -26554,9 +26630,10 @@ interface SVGRenderingIntent {
|
| // for details. All rights reserved. Use of this source code is governed by a
|
| // BSD-style license that can be found in the LICENSE file.
|
|
|
| -// WARNING: Do not edit - generated code.
|
| +interface SVGSVGElement extends SVGElement, SVGTests, SVGLangSpace, SVGExternalResourcesRequired, SVGStylable, SVGLocatable, SVGFitToViewBox, SVGZoomAndPan
|
| + default _SVGSVGElementFactoryProvider {
|
| + SVGSVGElement();
|
|
|
| -interface SVGSVGElement extends SVGElement, SVGTests, SVGLangSpace, SVGExternalResourcesRequired, SVGStylable, SVGLocatable, SVGFitToViewBox, SVGZoomAndPan {
|
|
|
| String contentScriptType;
|
|
|
| @@ -26631,6 +26708,7 @@ interface SVGSVGElement extends SVGElement, SVGTests, SVGLangSpace, SVGExternalR
|
| void unsuspendRedraw(int suspendHandleId);
|
|
|
| void unsuspendRedrawAll();
|
| +
|
| }
|
| // 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
|
| @@ -27164,6 +27242,8 @@ interface SelectElement extends Element {
|
|
|
| int selectedIndex;
|
|
|
| + final HTMLCollection selectedOptions;
|
| +
|
| int size;
|
|
|
| final String type;
|
| @@ -27204,6 +27284,8 @@ interface ShadowRoot extends DocumentFragment default _ShadowRootFactoryProvider
|
|
|
| ShadowRoot(Element host);
|
|
|
| + final Element activeElement;
|
| +
|
| final Element host;
|
|
|
| String innerHTML;
|
| @@ -27941,8 +28023,6 @@ interface TrackElement extends Element {
|
|
|
| static final int NONE = 0;
|
|
|
| - bool isDefault;
|
| -
|
| String kind;
|
|
|
| String label;
|
| @@ -31008,17 +31088,46 @@ class _DocumentFragmentFactoryProvider {
|
| // return fragment;
|
| // }
|
|
|
| - // TODO(nweiz): enable this when SVG is ported.
|
| - // factory DocumentFragment.svg(String svg) {
|
| - // final fragment = new DocumentFragment();
|
| - // final e = new SVGSVGElement();
|
| - // e.innerHTML = svg;
|
| - //
|
| - // // Copy list first since we don't want liveness during iteration.
|
| - // final List nodes = new List.from(e.nodes);
|
| - // fragment.nodes.addAll(nodes);
|
| - // return fragment;
|
| - // }
|
| + factory DocumentFragment.svg(String svg) {
|
| + final fragment = new DocumentFragment();
|
| + final e = new SVGSVGElement();
|
| + e.innerHTML = svg;
|
| +
|
| + // Copy list first since we don't want liveness during iteration.
|
| + final List nodes = new List.from(e.nodes);
|
| + fragment.nodes.addAll(nodes);
|
| + return fragment;
|
| + }
|
| +}
|
| +
|
| +class _SVGElementFactoryProvider {
|
| + factory SVGElement.tag(String tag) =>
|
| + _document._createElementNS("http://www.w3.org/2000/svg", tag);
|
| +
|
| + factory SVGElement.svg(String svg) {
|
| + Element parentTag;
|
| + final match = _START_TAG_REGEXP.firstMatch(svg);
|
| + if (match != null && match.group(1).toLowerCase() == 'svg') {
|
| + parentTag = new Element.tag('div');
|
| + } else {
|
| + parentTag = new SVGSVGElement();
|
| + }
|
| +
|
| + parentTag.innerHTML = svg;
|
| + if (parentTag.elements.length == 1) return parentTag.nodes.removeLast();
|
| +
|
| + throw new IllegalArgumentException('SVG had ${parentTag.elements.length} ' +
|
| + 'top-level elements but 1 expected');
|
| + }
|
| +}
|
| +
|
| +class _SVGSVGElementFactoryProvider {
|
| + factory SVGSVGElement() {
|
| + final el = new SVGElement.tag("svg");
|
| + // The SVG spec requires the version attribute to match the spec version
|
| + el.attributes['version'] = "1.1";
|
| + return el;
|
| + }
|
| }
|
| // 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
|
|
|