| 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 b5f053bb405298f757074af33ecdd785be526ca9..a0cfe96536a34eae7ecfe309e5a386420c691155 100644
|
| --- a/sdk/lib/html/dart2js/html_dart2js.dart
|
| +++ b/sdk/lib/html/dart2js/html_dart2js.dart
|
| @@ -5926,7 +5926,7 @@ class DataView extends ArrayBufferView native "*DataView" {
|
|
|
| @DomName('DataView.getInt8')
|
| @DocsEditable
|
| - Object getInt8({int byteOffset}) native;
|
| + int getInt8(int byteOffset) native;
|
|
|
| @DomName('DataView.getUint16')
|
| @DocsEditable
|
| @@ -5938,7 +5938,7 @@ class DataView extends ArrayBufferView native "*DataView" {
|
|
|
| @DomName('DataView.getUint8')
|
| @DocsEditable
|
| - Object getUint8({int byteOffset}) native;
|
| + int getUint8(int byteOffset) native;
|
|
|
| @DomName('DataView.setFloat32')
|
| @DocsEditable
|
| @@ -17096,9 +17096,10 @@ class _ChildNodeListLazy implements List {
|
|
|
| void addAll(Iterable<Node> iterable) {
|
| if (iterable is _ChildNodeListLazy) {
|
| - if (iterable._this != _this) {
|
| + if (!identical(iterable._this, _this)) {
|
| // Optimized route for copying between nodes.
|
| for (var i = 0, len = iterable.length; i < len; ++i) {
|
| + // Should use $dom_firstChild, Bug 8886.
|
| _this.$dom_appendChild(iterable[0]);
|
| }
|
| }
|
| @@ -17318,6 +17319,31 @@ class Node extends EventTarget native "*Node" {
|
| return this;
|
| }
|
|
|
| + /**
|
| + * Inserts all of the nodes into this node directly before refChild.
|
| + *
|
| + * See also:
|
| + *
|
| + * * [insertBefore]
|
| + */
|
| + Node insertAllBefore(Iterable<Node> newNodes, Node refChild) {
|
| + if (newNodes is _ChildNodeListLazy) {
|
| + if (identical(newNodes._this, this)) {
|
| + throw new ArgumentError(newNodes);
|
| + }
|
| +
|
| + // Optimized route for copying between nodes.
|
| + for (var i = 0, len = newNodes.length; i < len; ++i) {
|
| + // Should use $dom_firstChild, Bug 8886.
|
| + this.insertBefore(newNodes[0], refChild);
|
| + }
|
| + } else {
|
| + for (var node in newNodes) {
|
| + this.insertBefore(node, refChild);
|
| + }
|
| + }
|
| + }
|
| +
|
|
|
| @JSName('childNodes')
|
| @DomName('Node.childNodes')
|
|
|