| Index: lib/dom/frog/dom_frog.dart
|
| diff --git a/lib/dom/frog/dom_frog.dart b/lib/dom/frog/dom_frog.dart
|
| index bd866be272e1fa30b18a208a3d89df526b50593e..fde31243669a3a203aed824c893b452a168adc1e 100644
|
| --- a/lib/dom/frog/dom_frog.dart
|
| +++ b/lib/dom/frog/dom_frog.dart
|
| @@ -606,21 +606,30 @@ class _CanvasPixelArrayJs extends _DOMTypeJs implements CanvasPixelArray native
|
| int indexOf(int element, [int start = 0]) =>
|
| _Lists.indexOf(this, element, start, this.length);
|
|
|
| - int lastIndexOf(int element, [int start = 0]) =>
|
| - _Lists.lastIndexOf(this, element, start);
|
| + int lastIndexOf(int element, [int start]) {
|
| + if (start === null) start = length - 1;
|
| + return _Lists.lastIndexOf(this, element, start);
|
| + }
|
|
|
| int last() => this[length - 1];
|
|
|
| + int removeLast() {
|
| + throw new UnsupportedOperationException("Cannot removeLast on immutable List.");
|
| + }
|
| +
|
| // FIXME: implement these.
|
| void setRange(int start, int rangeLength, List<int> from, [int startFrom]) {
|
| throw new UnsupportedOperationException("Cannot setRange on immutable List.");
|
| }
|
| +
|
| void removeRange(int start, int rangeLength) {
|
| throw new UnsupportedOperationException("Cannot removeRange on immutable List.");
|
| }
|
| +
|
| void insertRange(int start, int rangeLength, [int initialValue]) {
|
| throw new UnsupportedOperationException("Cannot insertRange on immutable List.");
|
| }
|
| +
|
| List<int> getRange(int start, int rangeLength) =>
|
| _Lists.getRange(this, start, rangeLength, <int>[]);
|
|
|
| @@ -2376,21 +2385,30 @@ class _Float32ArrayJs extends _ArrayBufferViewJs implements Float32Array, List<n
|
| int indexOf(num element, [int start = 0]) =>
|
| _Lists.indexOf(this, element, start, this.length);
|
|
|
| - int lastIndexOf(num element, [int start = 0]) =>
|
| - _Lists.lastIndexOf(this, element, start);
|
| + int lastIndexOf(num element, [int start]) {
|
| + if (start === null) start = length - 1;
|
| + return _Lists.lastIndexOf(this, element, start);
|
| + }
|
|
|
| num last() => this[length - 1];
|
|
|
| + num removeLast() {
|
| + throw new UnsupportedOperationException("Cannot removeLast on immutable List.");
|
| + }
|
| +
|
| // FIXME: implement these.
|
| void setRange(int start, int rangeLength, List<num> from, [int startFrom]) {
|
| throw new UnsupportedOperationException("Cannot setRange on immutable List.");
|
| }
|
| +
|
| void removeRange(int start, int rangeLength) {
|
| throw new UnsupportedOperationException("Cannot removeRange on immutable List.");
|
| }
|
| +
|
| void insertRange(int start, int rangeLength, [num initialValue]) {
|
| throw new UnsupportedOperationException("Cannot insertRange on immutable List.");
|
| }
|
| +
|
| List<num> getRange(int start, int rangeLength) =>
|
| _Lists.getRange(this, start, rangeLength, <num>[]);
|
|
|
| @@ -2458,21 +2476,30 @@ class _Float64ArrayJs extends _ArrayBufferViewJs implements Float64Array, List<n
|
| int indexOf(num element, [int start = 0]) =>
|
| _Lists.indexOf(this, element, start, this.length);
|
|
|
| - int lastIndexOf(num element, [int start = 0]) =>
|
| - _Lists.lastIndexOf(this, element, start);
|
| + int lastIndexOf(num element, [int start]) {
|
| + if (start === null) start = length - 1;
|
| + return _Lists.lastIndexOf(this, element, start);
|
| + }
|
|
|
| num last() => this[length - 1];
|
|
|
| + num removeLast() {
|
| + throw new UnsupportedOperationException("Cannot removeLast on immutable List.");
|
| + }
|
| +
|
| // FIXME: implement these.
|
| void setRange(int start, int rangeLength, List<num> from, [int startFrom]) {
|
| throw new UnsupportedOperationException("Cannot setRange on immutable List.");
|
| }
|
| +
|
| void removeRange(int start, int rangeLength) {
|
| throw new UnsupportedOperationException("Cannot removeRange on immutable List.");
|
| }
|
| +
|
| void insertRange(int start, int rangeLength, [num initialValue]) {
|
| throw new UnsupportedOperationException("Cannot insertRange on immutable List.");
|
| }
|
| +
|
| List<num> getRange(int start, int rangeLength) =>
|
| _Lists.getRange(this, start, rangeLength, <num>[]);
|
|
|
| @@ -2757,21 +2784,30 @@ class _HTMLCollectionJs extends _DOMTypeJs implements HTMLCollection native "*HT
|
| int indexOf(Node element, [int start = 0]) =>
|
| _Lists.indexOf(this, element, start, this.length);
|
|
|
| - int lastIndexOf(Node element, [int start = 0]) =>
|
| - _Lists.lastIndexOf(this, element, start);
|
| + int lastIndexOf(Node element, [int start]) {
|
| + if (start === null) start = length - 1;
|
| + return _Lists.lastIndexOf(this, element, start);
|
| + }
|
|
|
| Node last() => this[length - 1];
|
|
|
| + Node removeLast() {
|
| + throw new UnsupportedOperationException("Cannot removeLast on immutable List.");
|
| + }
|
| +
|
| // FIXME: implement these.
|
| void setRange(int start, int rangeLength, List<Node> from, [int startFrom]) {
|
| throw new UnsupportedOperationException("Cannot setRange on immutable List.");
|
| }
|
| +
|
| void removeRange(int start, int rangeLength) {
|
| throw new UnsupportedOperationException("Cannot removeRange on immutable List.");
|
| }
|
| +
|
| void insertRange(int start, int rangeLength, [Node initialValue]) {
|
| throw new UnsupportedOperationException("Cannot insertRange on immutable List.");
|
| }
|
| +
|
| List<Node> getRange(int start, int rangeLength) =>
|
| _Lists.getRange(this, start, rangeLength, <Node>[]);
|
|
|
| @@ -4404,21 +4440,30 @@ class _Int16ArrayJs extends _ArrayBufferViewJs implements Int16Array, List<int>
|
| int indexOf(int element, [int start = 0]) =>
|
| _Lists.indexOf(this, element, start, this.length);
|
|
|
| - int lastIndexOf(int element, [int start = 0]) =>
|
| - _Lists.lastIndexOf(this, element, start);
|
| + int lastIndexOf(int element, [int start]) {
|
| + if (start === null) start = length - 1;
|
| + return _Lists.lastIndexOf(this, element, start);
|
| + }
|
|
|
| int last() => this[length - 1];
|
|
|
| + int removeLast() {
|
| + throw new UnsupportedOperationException("Cannot removeLast on immutable List.");
|
| + }
|
| +
|
| // FIXME: implement these.
|
| void setRange(int start, int rangeLength, List<int> from, [int startFrom]) {
|
| throw new UnsupportedOperationException("Cannot setRange on immutable List.");
|
| }
|
| +
|
| void removeRange(int start, int rangeLength) {
|
| throw new UnsupportedOperationException("Cannot removeRange on immutable List.");
|
| }
|
| +
|
| void insertRange(int start, int rangeLength, [int initialValue]) {
|
| throw new UnsupportedOperationException("Cannot insertRange on immutable List.");
|
| }
|
| +
|
| List<int> getRange(int start, int rangeLength) =>
|
| _Lists.getRange(this, start, rangeLength, <int>[]);
|
|
|
| @@ -4486,21 +4531,30 @@ class _Int32ArrayJs extends _ArrayBufferViewJs implements Int32Array, List<int>
|
| int indexOf(int element, [int start = 0]) =>
|
| _Lists.indexOf(this, element, start, this.length);
|
|
|
| - int lastIndexOf(int element, [int start = 0]) =>
|
| - _Lists.lastIndexOf(this, element, start);
|
| + int lastIndexOf(int element, [int start]) {
|
| + if (start === null) start = length - 1;
|
| + return _Lists.lastIndexOf(this, element, start);
|
| + }
|
|
|
| int last() => this[length - 1];
|
|
|
| + int removeLast() {
|
| + throw new UnsupportedOperationException("Cannot removeLast on immutable List.");
|
| + }
|
| +
|
| // FIXME: implement these.
|
| void setRange(int start, int rangeLength, List<int> from, [int startFrom]) {
|
| throw new UnsupportedOperationException("Cannot setRange on immutable List.");
|
| }
|
| +
|
| void removeRange(int start, int rangeLength) {
|
| throw new UnsupportedOperationException("Cannot removeRange on immutable List.");
|
| }
|
| +
|
| void insertRange(int start, int rangeLength, [int initialValue]) {
|
| throw new UnsupportedOperationException("Cannot insertRange on immutable List.");
|
| }
|
| +
|
| List<int> getRange(int start, int rangeLength) =>
|
| _Lists.getRange(this, start, rangeLength, <int>[]);
|
|
|
| @@ -4568,21 +4622,30 @@ class _Int8ArrayJs extends _ArrayBufferViewJs implements Int8Array, List<int> na
|
| int indexOf(int element, [int start = 0]) =>
|
| _Lists.indexOf(this, element, start, this.length);
|
|
|
| - int lastIndexOf(int element, [int start = 0]) =>
|
| - _Lists.lastIndexOf(this, element, start);
|
| + int lastIndexOf(int element, [int start]) {
|
| + if (start === null) start = length - 1;
|
| + return _Lists.lastIndexOf(this, element, start);
|
| + }
|
|
|
| int last() => this[length - 1];
|
|
|
| + int removeLast() {
|
| + throw new UnsupportedOperationException("Cannot removeLast on immutable List.");
|
| + }
|
| +
|
| // FIXME: implement these.
|
| void setRange(int start, int rangeLength, List<int> from, [int startFrom]) {
|
| throw new UnsupportedOperationException("Cannot setRange on immutable List.");
|
| }
|
| +
|
| void removeRange(int start, int rangeLength) {
|
| throw new UnsupportedOperationException("Cannot removeRange on immutable List.");
|
| }
|
| +
|
| void insertRange(int start, int rangeLength, [int initialValue]) {
|
| throw new UnsupportedOperationException("Cannot insertRange on immutable List.");
|
| }
|
| +
|
| List<int> getRange(int start, int rangeLength) =>
|
| _Lists.getRange(this, start, rangeLength, <int>[]);
|
|
|
| @@ -4803,21 +4866,30 @@ class _MediaListJs extends _DOMTypeJs implements MediaList native "*MediaList" {
|
| int indexOf(String element, [int start = 0]) =>
|
| _Lists.indexOf(this, element, start, this.length);
|
|
|
| - int lastIndexOf(String element, [int start = 0]) =>
|
| - _Lists.lastIndexOf(this, element, start);
|
| + int lastIndexOf(String element, [int start]) {
|
| + if (start === null) start = length - 1;
|
| + return _Lists.lastIndexOf(this, element, start);
|
| + }
|
|
|
| String last() => this[length - 1];
|
|
|
| + String removeLast() {
|
| + throw new UnsupportedOperationException("Cannot removeLast on immutable List.");
|
| + }
|
| +
|
| // FIXME: implement these.
|
| void setRange(int start, int rangeLength, List<String> from, [int startFrom]) {
|
| throw new UnsupportedOperationException("Cannot setRange on immutable List.");
|
| }
|
| +
|
| void removeRange(int start, int rangeLength) {
|
| throw new UnsupportedOperationException("Cannot removeRange on immutable List.");
|
| }
|
| +
|
| void insertRange(int start, int rangeLength, [String initialValue]) {
|
| throw new UnsupportedOperationException("Cannot insertRange on immutable List.");
|
| }
|
| +
|
| List<String> getRange(int start, int rangeLength) =>
|
| _Lists.getRange(this, start, rangeLength, <String>[]);
|
|
|
| @@ -5071,21 +5143,30 @@ class _NamedNodeMapJs extends _DOMTypeJs implements NamedNodeMap native "*NamedN
|
| int indexOf(Node element, [int start = 0]) =>
|
| _Lists.indexOf(this, element, start, this.length);
|
|
|
| - int lastIndexOf(Node element, [int start = 0]) =>
|
| - _Lists.lastIndexOf(this, element, start);
|
| + int lastIndexOf(Node element, [int start]) {
|
| + if (start === null) start = length - 1;
|
| + return _Lists.lastIndexOf(this, element, start);
|
| + }
|
|
|
| Node last() => this[length - 1];
|
|
|
| + Node removeLast() {
|
| + throw new UnsupportedOperationException("Cannot removeLast on immutable List.");
|
| + }
|
| +
|
| // FIXME: implement these.
|
| void setRange(int start, int rangeLength, List<Node> from, [int startFrom]) {
|
| throw new UnsupportedOperationException("Cannot setRange on immutable List.");
|
| }
|
| +
|
| void removeRange(int start, int rangeLength) {
|
| throw new UnsupportedOperationException("Cannot removeRange on immutable List.");
|
| }
|
| +
|
| void insertRange(int start, int rangeLength, [Node initialValue]) {
|
| throw new UnsupportedOperationException("Cannot insertRange on immutable List.");
|
| }
|
| +
|
| List<Node> getRange(int start, int rangeLength) =>
|
| _Lists.getRange(this, start, rangeLength, <Node>[]);
|
|
|
| @@ -5380,21 +5461,30 @@ class _NodeListJs extends _DOMTypeJs implements NodeList native "*NodeList" {
|
| int indexOf(Node element, [int start = 0]) =>
|
| _Lists.indexOf(this, element, start, this.length);
|
|
|
| - int lastIndexOf(Node element, [int start = 0]) =>
|
| - _Lists.lastIndexOf(this, element, start);
|
| + int lastIndexOf(Node element, [int start]) {
|
| + if (start === null) start = length - 1;
|
| + return _Lists.lastIndexOf(this, element, start);
|
| + }
|
|
|
| Node last() => this[length - 1];
|
|
|
| + Node removeLast() {
|
| + throw new UnsupportedOperationException("Cannot removeLast on immutable List.");
|
| + }
|
| +
|
| // FIXME: implement these.
|
| void setRange(int start, int rangeLength, List<Node> from, [int startFrom]) {
|
| throw new UnsupportedOperationException("Cannot setRange on immutable List.");
|
| }
|
| +
|
| void removeRange(int start, int rangeLength) {
|
| throw new UnsupportedOperationException("Cannot removeRange on immutable List.");
|
| }
|
| +
|
| void insertRange(int start, int rangeLength, [Node initialValue]) {
|
| throw new UnsupportedOperationException("Cannot insertRange on immutable List.");
|
| }
|
| +
|
| List<Node> getRange(int start, int rangeLength) =>
|
| _Lists.getRange(this, start, rangeLength, <Node>[]);
|
|
|
| @@ -9547,21 +9637,30 @@ class _StyleSheetListJs extends _DOMTypeJs implements StyleSheetList native "*St
|
| int indexOf(StyleSheet element, [int start = 0]) =>
|
| _Lists.indexOf(this, element, start, this.length);
|
|
|
| - int lastIndexOf(StyleSheet element, [int start = 0]) =>
|
| - _Lists.lastIndexOf(this, element, start);
|
| + int lastIndexOf(StyleSheet element, [int start]) {
|
| + if (start === null) start = length - 1;
|
| + return _Lists.lastIndexOf(this, element, start);
|
| + }
|
|
|
| StyleSheet last() => this[length - 1];
|
|
|
| + StyleSheet removeLast() {
|
| + throw new UnsupportedOperationException("Cannot removeLast on immutable List.");
|
| + }
|
| +
|
| // FIXME: implement these.
|
| void setRange(int start, int rangeLength, List<StyleSheet> from, [int startFrom]) {
|
| throw new UnsupportedOperationException("Cannot setRange on immutable List.");
|
| }
|
| +
|
| void removeRange(int start, int rangeLength) {
|
| throw new UnsupportedOperationException("Cannot removeRange on immutable List.");
|
| }
|
| +
|
| void insertRange(int start, int rangeLength, [StyleSheet initialValue]) {
|
| throw new UnsupportedOperationException("Cannot insertRange on immutable List.");
|
| }
|
| +
|
| List<StyleSheet> getRange(int start, int rangeLength) =>
|
| _Lists.getRange(this, start, rangeLength, <StyleSheet>[]);
|
|
|
| @@ -9799,21 +9898,30 @@ class _TouchListJs extends _DOMTypeJs implements TouchList native "*TouchList" {
|
| int indexOf(Touch element, [int start = 0]) =>
|
| _Lists.indexOf(this, element, start, this.length);
|
|
|
| - int lastIndexOf(Touch element, [int start = 0]) =>
|
| - _Lists.lastIndexOf(this, element, start);
|
| + int lastIndexOf(Touch element, [int start]) {
|
| + if (start === null) start = length - 1;
|
| + return _Lists.lastIndexOf(this, element, start);
|
| + }
|
|
|
| Touch last() => this[length - 1];
|
|
|
| + Touch removeLast() {
|
| + throw new UnsupportedOperationException("Cannot removeLast on immutable List.");
|
| + }
|
| +
|
| // FIXME: implement these.
|
| void setRange(int start, int rangeLength, List<Touch> from, [int startFrom]) {
|
| throw new UnsupportedOperationException("Cannot setRange on immutable List.");
|
| }
|
| +
|
| void removeRange(int start, int rangeLength) {
|
| throw new UnsupportedOperationException("Cannot removeRange on immutable List.");
|
| }
|
| +
|
| void insertRange(int start, int rangeLength, [Touch initialValue]) {
|
| throw new UnsupportedOperationException("Cannot insertRange on immutable List.");
|
| }
|
| +
|
| List<Touch> getRange(int start, int rangeLength) =>
|
| _Lists.getRange(this, start, rangeLength, <Touch>[]);
|
|
|
| @@ -9934,21 +10042,30 @@ class _Uint16ArrayJs extends _ArrayBufferViewJs implements Uint16Array, List<int
|
| int indexOf(int element, [int start = 0]) =>
|
| _Lists.indexOf(this, element, start, this.length);
|
|
|
| - int lastIndexOf(int element, [int start = 0]) =>
|
| - _Lists.lastIndexOf(this, element, start);
|
| + int lastIndexOf(int element, [int start]) {
|
| + if (start === null) start = length - 1;
|
| + return _Lists.lastIndexOf(this, element, start);
|
| + }
|
|
|
| int last() => this[length - 1];
|
|
|
| + int removeLast() {
|
| + throw new UnsupportedOperationException("Cannot removeLast on immutable List.");
|
| + }
|
| +
|
| // FIXME: implement these.
|
| void setRange(int start, int rangeLength, List<int> from, [int startFrom]) {
|
| throw new UnsupportedOperationException("Cannot setRange on immutable List.");
|
| }
|
| +
|
| void removeRange(int start, int rangeLength) {
|
| throw new UnsupportedOperationException("Cannot removeRange on immutable List.");
|
| }
|
| +
|
| void insertRange(int start, int rangeLength, [int initialValue]) {
|
| throw new UnsupportedOperationException("Cannot insertRange on immutable List.");
|
| }
|
| +
|
| List<int> getRange(int start, int rangeLength) =>
|
| _Lists.getRange(this, start, rangeLength, <int>[]);
|
|
|
| @@ -10016,21 +10133,30 @@ class _Uint32ArrayJs extends _ArrayBufferViewJs implements Uint32Array, List<int
|
| int indexOf(int element, [int start = 0]) =>
|
| _Lists.indexOf(this, element, start, this.length);
|
|
|
| - int lastIndexOf(int element, [int start = 0]) =>
|
| - _Lists.lastIndexOf(this, element, start);
|
| + int lastIndexOf(int element, [int start]) {
|
| + if (start === null) start = length - 1;
|
| + return _Lists.lastIndexOf(this, element, start);
|
| + }
|
|
|
| int last() => this[length - 1];
|
|
|
| + int removeLast() {
|
| + throw new UnsupportedOperationException("Cannot removeLast on immutable List.");
|
| + }
|
| +
|
| // FIXME: implement these.
|
| void setRange(int start, int rangeLength, List<int> from, [int startFrom]) {
|
| throw new UnsupportedOperationException("Cannot setRange on immutable List.");
|
| }
|
| +
|
| void removeRange(int start, int rangeLength) {
|
| throw new UnsupportedOperationException("Cannot removeRange on immutable List.");
|
| }
|
| +
|
| void insertRange(int start, int rangeLength, [int initialValue]) {
|
| throw new UnsupportedOperationException("Cannot insertRange on immutable List.");
|
| }
|
| +
|
| List<int> getRange(int start, int rangeLength) =>
|
| _Lists.getRange(this, start, rangeLength, <int>[]);
|
|
|
| @@ -10098,21 +10224,30 @@ class _Uint8ArrayJs extends _ArrayBufferViewJs implements Uint8Array, List<int>
|
| int indexOf(int element, [int start = 0]) =>
|
| _Lists.indexOf(this, element, start, this.length);
|
|
|
| - int lastIndexOf(int element, [int start = 0]) =>
|
| - _Lists.lastIndexOf(this, element, start);
|
| + int lastIndexOf(int element, [int start]) {
|
| + if (start === null) start = length - 1;
|
| + return _Lists.lastIndexOf(this, element, start);
|
| + }
|
|
|
| int last() => this[length - 1];
|
|
|
| + int removeLast() {
|
| + throw new UnsupportedOperationException("Cannot removeLast on immutable List.");
|
| + }
|
| +
|
| // FIXME: implement these.
|
| void setRange(int start, int rangeLength, List<int> from, [int startFrom]) {
|
| throw new UnsupportedOperationException("Cannot setRange on immutable List.");
|
| }
|
| +
|
| void removeRange(int start, int rangeLength) {
|
| throw new UnsupportedOperationException("Cannot removeRange on immutable List.");
|
| }
|
| +
|
| void insertRange(int start, int rangeLength, [int initialValue]) {
|
| throw new UnsupportedOperationException("Cannot insertRange on immutable List.");
|
| }
|
| +
|
| List<int> getRange(int start, int rangeLength) =>
|
| _Lists.getRange(this, start, rangeLength, <int>[]);
|
|
|
|
|