| Index: third_party/WebKit/Source/devtools/front_end/sass/SASSSupport.js
|
| diff --git a/third_party/WebKit/Source/devtools/front_end/sass/SASSSupport.js b/third_party/WebKit/Source/devtools/front_end/sass/SASSSupport.js
|
| index bb387c2e910a0e500baea4127a146038919c57bc..65f39a75a8adc1a21eaaf1089b0e3fdb570601f5 100644
|
| --- a/third_party/WebKit/Source/devtools/front_end/sass/SASSSupport.js
|
| +++ b/third_party/WebKit/Source/devtools/front_end/sass/SASSSupport.js
|
| @@ -21,7 +21,7 @@ WebInspector.SASSSupport.parseCSS = function(cssParserService, url, text)
|
| */
|
| function onParsed(parsedCSS)
|
| {
|
| - var document = new WebInspector.SASSSupport.ASTDocument(url, text);
|
| + var document = new WebInspector.SASSSupport.ASTDocument(url, new WebInspector.Text(text));
|
| var rules = [];
|
| for (var i = 0; i < parsedCSS.length; ++i) {
|
| var rule = parsedCSS[i];
|
| @@ -49,7 +49,7 @@ WebInspector.SASSSupport.parseCSS = function(cssParserService, url, text)
|
| */
|
| WebInspector.SASSSupport.parseSCSS = function(tokenizerFactory, url, text)
|
| {
|
| - var document = new WebInspector.SASSSupport.ASTDocument(url, text);
|
| + var document = new WebInspector.SASSSupport.ASTDocument(url, new WebInspector.Text(text));
|
| var result = WebInspector.SASSSupport._innerParseSCSS(document, tokenizerFactory);
|
|
|
| var rules = [
|
| @@ -80,7 +80,7 @@ WebInspector.SASSSupport.SCSSParserStates = {
|
| */
|
| WebInspector.SASSSupport._innerParseSCSS = function(document, tokenizerFactory)
|
| {
|
| - var lines = document.text.split("\n");
|
| + var lines = document.text.value().split("\n");
|
| var properties = [];
|
| var variables = [];
|
| var mixins = [];
|
| @@ -118,7 +118,7 @@ WebInspector.SASSSupport._innerParseSCSS = function(document, tokenizerFactory)
|
| break;
|
| var uncommentedText = tokenValue.substring(2, tokenValue.length - 2);
|
| var fakeRuleText = "a{\n" + uncommentedText + "}";
|
| - var fakeDocument = new WebInspector.SASSSupport.ASTDocument("", fakeRuleText);
|
| + var fakeDocument = new WebInspector.SASSSupport.ASTDocument("", new WebInspector.Text(fakeRuleText));
|
| var result = WebInspector.SASSSupport._innerParseSCSS(fakeDocument, tokenizerFactory);
|
| if (result.properties.length === 1 && result.variables.length === 0 && result.mixins.length === 0) {
|
| var disabledProperty = result.properties[0];
|
| @@ -237,7 +237,7 @@ WebInspector.SASSSupport._innerParseSCSS = function(document, tokenizerFactory)
|
| /**
|
| * @constructor
|
| * @param {string} url
|
| - * @param {string} text
|
| + * @param {!WebInspector.Text} text
|
| */
|
| WebInspector.SASSSupport.ASTDocument = function(url, text)
|
| {
|
| @@ -264,7 +264,7 @@ WebInspector.SASSSupport.ASTDocument.prototype = {
|
| },
|
|
|
| /**
|
| - * @return {string}
|
| + * @return {!WebInspector.Text}
|
| */
|
| newText: function()
|
| {
|
| @@ -422,7 +422,6 @@ WebInspector.SASSSupport.Property.prototype = {
|
| return;
|
| }
|
| var oldRange1 = new WebInspector.TextRange(this.range.startLine, this.range.startColumn, this.range.startLine, this.name.range.startColumn);
|
| - var text = this.document.text;
|
| var edit1 = new WebInspector.SourceEdit(this.document.url, oldRange1, "");
|
| var oldRange2 = new WebInspector.TextRange(this.range.endLine, this.range.endColumn - 2, this.range.endLine, this.range.endColumn);
|
| var edit2 = new WebInspector.SourceEdit(this.document.url, oldRange2, "");
|
| @@ -439,7 +438,7 @@ WebInspector.SASSSupport.Property.prototype = {
|
|
|
| var lineRange = new WebInspector.TextRange(this.range.startLine, 0, this.range.endLine + 1, 0);
|
| var oldRange;
|
| - if (lineRange.extract(this.document.text).trim() === this.range.extract(this.document.text).trim())
|
| + if (this.document.text.extract(lineRange).trim() === this.document.text.extract(this.range).trim())
|
| oldRange = lineRange;
|
| else
|
| oldRange = this.range;
|
| @@ -466,7 +465,7 @@ WebInspector.SASSSupport.Rule = function(document, selector, styleRange, propert
|
| for (var i = 0; i < this.properties.length; ++i)
|
| this.properties[i].parent = this;
|
|
|
| - this._hasTrailingSemicolon = !this.properties.length || this.properties.peekLast().range.extract(this.document.text).endsWith(";");
|
| + this._hasTrailingSemicolon = !this.properties.length || this.document.text.extract(this.properties.peekLast().range).endsWith(";");
|
| }
|
|
|
| WebInspector.SASSSupport.Rule.prototype = {
|
| @@ -564,7 +563,7 @@ WebInspector.SASSSupport.Rule.prototype = {
|
| _insertPropertyEdit: function(nameText, valueText, disabled, anchorProperty, insertBefore)
|
| {
|
| var oldRange = insertBefore ? anchorProperty.range.collapseToStart() : anchorProperty.range.collapseToEnd();
|
| - var indent = (new WebInspector.TextRange(anchorProperty.range.startLine, 0, anchorProperty.range.startLine, anchorProperty.range.startColumn)).extract(this.document.text);
|
| + var indent = this.document.text.extract(new WebInspector.TextRange(anchorProperty.range.startLine, 0, anchorProperty.range.startLine, anchorProperty.range.startColumn));
|
| if (!/^\s+$/.test(indent)) indent = "";
|
|
|
| var newText = "";
|
|
|