Web Inspector: CSS style declaration editor should ignore empty lines when determinin...
authorjonowells@apple.com <jonowells@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 8 Jul 2014 01:38:35 +0000 (01:38 +0000)
committerjonowells@apple.com <jonowells@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 8 Jul 2014 01:38:35 +0000 (01:38 +0000)
https://bugs.webkit.org/show_bug.cgi?id=134704

Reviewed by Joseph Pecoraro.

When checking for zero-length prefix whitespace, completely empty lines are now ignored
as these lines are most often used for organizing rules into groups and often have their
whitespace removed due to trailing whitespace removal conventions.

* UserInterface/Views/CSSStyleDeclarationTextEditor.js:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@170868 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/WebInspectorUI/ChangeLog
Source/WebInspectorUI/UserInterface/Views/CSSStyleDeclarationTextEditor.js

index 9994c2c..71e428f 100644 (file)
@@ -1,3 +1,16 @@
+2014-07-07  Jonathan Wells  <jonowells@apple.com>
+
+        Web Inspector: CSS style declaration editor should ignore empty lines when determining prefix whitespace
+        https://bugs.webkit.org/show_bug.cgi?id=134704
+
+        Reviewed by Joseph Pecoraro.
+
+        When checking for zero-length prefix whitespace, completely empty lines are now ignored
+        as these lines are most often used for organizing rules into groups and often have their
+        whitespace removed due to trailing whitespace removal conventions.
+
+        * UserInterface/Views/CSSStyleDeclarationTextEditor.js:
+
 2014-07-07  Joseph Pecoraro  <pecoraro@apple.com>
 
         Web Inspector: Uncaught Exception debugging iOS 7 NetworkAgent.loadResource is unavailable
index d352ecc..1f1746c 100644 (file)
@@ -869,9 +869,11 @@ WebInspector.CSSStyleDeclarationTextEditor.prototype = {
                     var lineContent = this._codeMirror.getLine(i);
                     var prefixWhitespaceMatch = lineContent.match(/^\s+/);
 
-                    // If there is no prefix whitespace, then the prefix whitespace of all
-                    // other lines will be retained as is. Update markers and return.
+                    // If there is no prefix whitespace (except for empty lines) then the prefix
+                    // whitespace of all other lines will be retained as is. Update markers and return.
                     if (!prefixWhitespaceMatch) {
+                        if (!lineContent)
+                            continue;
                         this._linePrefixWhitespace = "";
                         this._updateTextMarkers(true);
                         return;
@@ -912,7 +914,7 @@ WebInspector.CSSStyleDeclarationTextEditor.prototype = {
 
                 var lineNumber = 0;
 
-                // Iterate only visible properties if we have original style text. That way we known we only syntesize
+                // Iterate only visible properties if we have original style text. That way we known we only synthesize
                 // what was originaly in the style text.
                 this._iterateOverProperties(styleText ? true : false, function(property) {
                     // Some property text can have line breaks, so consider that in the ranges below.