Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2)

Unified Diff: sdk/lib/html/dart2js/html_dart2js.dart

Side-by-side diff isn't available for this file because of its large size.
Issue 23460019: Optimization for Element.innerHtml (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
Download patch
« no previous file with comments | « no previous file | sdk/lib/html/dartium/html_dartium.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 61dfe4c27f72ba2c40115feb0e99085e206176b8..129d2d928944bbf2b0a3c4d0ad407a6a37f5bfb1 100644
--- a/sdk/lib/html/dart2js/html_dart2js.dart
+++ b/sdk/lib/html/dart2js/html_dart2js.dart
@@ -9641,6 +9641,7 @@ abstract class Element extends Node implements ParentNode, ChildNode native "Ele
}
static HtmlDocument _parseDocument;
+ static Range _parseRange;
static NodeValidatorBuilder _defaultValidator;
static _ValidatingTreeSanitizer _defaultSanitizer;
@@ -9686,6 +9687,7 @@ abstract class Element extends Node implements ParentNode, ChildNode native "Ele
if (_parseDocument == null) {
_parseDocument = document.implementation.createHtmlDocument('');
+ _parseRange = _parseDocument.createRange();
}
var contextElement;
if (this is BodyElement) {
@@ -9696,9 +9698,8 @@ abstract class Element extends Node implements ParentNode, ChildNode native "Ele
}
var fragment;
if (Range.supportsCreateContextualFragment) {
- var range = _parseDocument.createRange();
- range.selectNodeContents(contextElement);
- fragment = range.createContextualFragment(html);
+ _parseRange.selectNodeContents(contextElement);
+ fragment = _parseRange.createContextualFragment(html);
} else {
contextElement._innerHtml = html;
« no previous file with comments | « no previous file | sdk/lib/html/dartium/html_dartium.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698