| 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 3f6daaf3566e1f5d2bad1069717569047389c3fd..f5708a405377b597c1abbc25f5325ce273ba739e 100644
|
| --- a/sdk/lib/html/dart2js/html_dart2js.dart
|
| +++ b/sdk/lib/html/dart2js/html_dart2js.dart
|
| @@ -11666,7 +11666,7 @@ class DomRectReadOnly extends Interceptor implements Rectangle {
|
| @Native("DOMStringList")
|
| class DomStringList extends Interceptor
|
| with ListMixin<String>, ImmutableListMixin<String>
|
| - implements List<String> {
|
| + implements JavaScriptIndexingBehavior<String>, List<String> {
|
| // To suppress missing implicit constructor warnings.
|
| factory DomStringList._() {
|
| throw new UnsupportedError("Not supported");
|
| @@ -11679,7 +11679,7 @@ class DomStringList extends Interceptor
|
| String operator [](int index) {
|
| if (JS("bool", "# >>> 0 !== # || # >= #", index, index, index, length))
|
| throw new RangeError.index(index, this);
|
| - return this.item(index);
|
| + return JS("String", "#[#]", this, index);
|
| }
|
|
|
| void operator []=(int index, String value) {
|
| @@ -34458,7 +34458,7 @@ class TextTrackCue extends EventTarget {
|
| @Native("TextTrackCueList")
|
| class TextTrackCueList extends Interceptor
|
| with ListMixin<TextTrackCue>, ImmutableListMixin<TextTrackCue>
|
| - implements List<TextTrackCue> {
|
| + implements List<TextTrackCue>, JavaScriptIndexingBehavior<TextTrackCue> {
|
| // To suppress missing implicit constructor warnings.
|
| factory TextTrackCueList._() {
|
| throw new UnsupportedError("Not supported");
|
| @@ -34468,6 +34468,12 @@ class TextTrackCueList extends Interceptor
|
| @DocsEditable()
|
| int get length => JS("int", "#.length", this);
|
|
|
| + TextTrackCue operator [](int index) {
|
| + if (JS("bool", "# >>> 0 !== # || # >= #", index, index, index, length))
|
| + throw new RangeError.index(index, this);
|
| + return JS("TextTrackCue", "#[#]", this, index);
|
| + }
|
| +
|
| void operator []=(int index, TextTrackCue value) {
|
| throw new UnsupportedError("Cannot assign element of immutable List.");
|
| }
|
| @@ -34525,7 +34531,7 @@ class TextTrackCueList extends Interceptor
|
| @Native("TextTrackList")
|
| class TextTrackList extends EventTarget
|
| with ListMixin<TextTrack>, ImmutableListMixin<TextTrack>
|
| - implements List<TextTrack> {
|
| + implements List<TextTrack>, JavaScriptIndexingBehavior<TextTrack> {
|
| // To suppress missing implicit constructor warnings.
|
| factory TextTrackList._() {
|
| throw new UnsupportedError("Not supported");
|
| @@ -34552,6 +34558,12 @@ class TextTrackList extends EventTarget
|
| @DocsEditable()
|
| int get length => JS("int", "#.length", this);
|
|
|
| + TextTrack operator [](int index) {
|
| + if (JS("bool", "# >>> 0 !== # || # >= #", index, index, index, length))
|
| + throw new RangeError.index(index, this);
|
| + return JS("TextTrack", "#[#]", this, index);
|
| + }
|
| +
|
| void operator []=(int index, TextTrack value) {
|
| throw new UnsupportedError("Cannot assign element of immutable List.");
|
| }
|
| @@ -40053,7 +40065,7 @@ class _JenkinsSmiHash {
|
| @Native("ClientRectList,DOMRectList")
|
| class _ClientRectList extends Interceptor
|
| with ListMixin<Rectangle>, ImmutableListMixin<Rectangle>
|
| - implements List<Rectangle> {
|
| + implements List<Rectangle>, JavaScriptIndexingBehavior<Rectangle> {
|
| // To suppress missing implicit constructor warnings.
|
| factory _ClientRectList._() {
|
| throw new UnsupportedError("Not supported");
|
| @@ -40066,7 +40078,7 @@ class _ClientRectList extends Interceptor
|
| Rectangle operator [](int index) {
|
| if (JS("bool", "# >>> 0 !== # || # >= #", index, index, index, length))
|
| throw new RangeError.index(index, this);
|
| - return this.item(index);
|
| + return JS("Rectangle", "#[#]", this, index);
|
| }
|
|
|
| void operator []=(int index, Rectangle value) {
|
|
|