[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc

apavlov at chromium.org apavlov at chromium.org
Wed Dec 22 16:36:58 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit cae2091174a126194b4fe2a31d324c3ba1835d10
Author: apavlov at chromium.org <apavlov at chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Mon Nov 29 11:28:22 2010 +0000

    2010-11-26  Alexander Pavlov  <apavlov at chromium.org>
    
            Reviewed by Pavel Feldman.
    
            Web Inspector: Styles Gear Menu Choice to Display Colors "As Authored"
            https://bugs.webkit.org/show_bug.cgi?id=31614
    
            * English.lproj/localizedStrings.js:
            * inspector/front-end/Color.js:
            (WebInspector.Color.prototype.toString):
            (WebInspector.Color.prototype._parse.this.rgba.set 0):
            (WebInspector.Color.prototype._parse.set WebInspector):
            (WebInspector.Color.prototype._parse):
            * inspector/front-end/StylesSidebarPane.js:
            (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor.nextFormat):
            (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor.changeColorDisplay):
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@72786 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 487277b..2f680cf 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,20 @@
+2010-11-26  Alexander Pavlov  <apavlov at chromium.org>
+
+        Reviewed by Pavel Feldman.
+
+        Web Inspector: Styles Gear Menu Choice to Display Colors "As Authored"
+        https://bugs.webkit.org/show_bug.cgi?id=31614
+
+        * English.lproj/localizedStrings.js:
+        * inspector/front-end/Color.js:
+        (WebInspector.Color.prototype.toString):
+        (WebInspector.Color.prototype._parse.this.rgba.set 0):
+        (WebInspector.Color.prototype._parse.set WebInspector):
+        (WebInspector.Color.prototype._parse):
+        * inspector/front-end/StylesSidebarPane.js:
+        (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor.nextFormat):
+        (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor.changeColorDisplay):
+
 2010-11-29  Helder Correia  <helder at sencha.com>
 
         Reviewed by Kenneth Rohde Christiansen.
diff --git a/WebCore/English.lproj/localizedStrings.js b/WebCore/English.lproj/localizedStrings.js
index 006d696..3ecfe94 100644
Binary files a/WebCore/English.lproj/localizedStrings.js and b/WebCore/English.lproj/localizedStrings.js differ
diff --git a/WebCore/inspector/front-end/Color.js b/WebCore/inspector/front-end/Color.js
index 11d6bad..5e7314c 100644
--- a/WebCore/inspector/front-end/Color.js
+++ b/WebCore/inspector/front-end/Color.js
@@ -143,6 +143,8 @@ WebInspector.Color.prototype = {
             format = this.format;
 
         switch (format) {
+            case "original":
+                return this.value;
             case "rgb":
                 return "rgb(" + this.rgb.join(", ") + ")";
             case "rgba":
@@ -324,7 +326,7 @@ WebInspector.Color.prototype = {
                     throw "unknown color name";
             } else if (match[4]) { // hsl
                 this.format = "hsl";
-                var hsl = match[4].replace(/%g/, "").split(/\s*,\s*/);
+                var hsl = match[4].replace(/%/g, "").split(/\s*,\s*/);
                 this.hsl = hsl;
                 this.rgb = this._hslToRGB(hsl);
                 this.hex = this._rgbToHex(this.rgb);
diff --git a/WebCore/inspector/front-end/StylesSidebarPane.js b/WebCore/inspector/front-end/StylesSidebarPane.js
index df8b730..68ad0dd 100644
--- a/WebCore/inspector/front-end/StylesSidebarPane.js
+++ b/WebCore/inspector/front-end/StylesSidebarPane.js
@@ -34,6 +34,12 @@ WebInspector.StylesSidebarPane = function(computedStylePane)
     this.settingsSelectElement = document.createElement("select");
 
     var option = document.createElement("option");
+    option.value = "original";
+    option.action = this._changeColorFormat.bind(this);
+    option.label = WebInspector.UIString("As Authored");
+    this.settingsSelectElement.appendChild(option);
+
+    var option = document.createElement("option");
     option.value = "hex";
     option.action = this._changeColorFormat.bind(this);
     option.label = WebInspector.UIString("Hex Colors");
@@ -61,12 +67,14 @@ WebInspector.StylesSidebarPane = function(computedStylePane)
     this.settingsSelectElement.addEventListener("click", function(event) { event.stopPropagation() }, false);
     this.settingsSelectElement.addEventListener("change", this._changeSetting.bind(this), false);
     var format = WebInspector.settings.colorFormat;
-    if (format === "hex")
+    if (format === "original")
         this.settingsSelectElement[0].selected = true;
-    else if (format === "rgb")
+    else if (format === "hex")
         this.settingsSelectElement[1].selected = true;
-    else if (format === "hsl")
+    else if (format === "rgb")
         this.settingsSelectElement[2].selected = true;
+    else if (format === "hsl")
+        this.settingsSelectElement[3].selected = true;
 
     this.titleElement.appendChild(this.settingsSelectElement);
     this._computedStylePane = computedStylePane;
@@ -1248,7 +1256,9 @@ WebInspector.StylePropertyTreeElement.prototype = {
                 swatchElement.addEventListener("dblclick", function(event) { event.stopPropagation() }, false);
 
                 var format;
-                if (Preferences.showColorNicknames && color.nickname)
+                if (WebInspector.settings.colorFormat === "original")
+                    format = "original";
+                else if (Preferences.showColorNicknames && color.nickname)
                     format = "nickname";
                 else if (WebInspector.settings.colorFormat === "rgb")
                     format = (color.simple ? "rgb" : "rgba");
@@ -1262,55 +1272,59 @@ WebInspector.StylePropertyTreeElement.prototype = {
                 var colorValueElement = document.createElement("span");
                 colorValueElement.textContent = color.toString(format);
 
-                function changeColorDisplay(event)
+                function nextFormat(curFormat)
                 {
-                    switch (format) {
+                    // The format loop is as follows:
+                    // * original
+                    // * rgb(a)
+                    // * hsl(a)
+                    // * nickname (if the color has a nickname)
+                    // * if the color is simple:
+                    //   - shorthex (if has short hex)
+                    //   - hex
+                    switch (curFormat) {
+                        case "original":
+                            return color.simple ? "rgb" : "rgba";
+
                         case "rgb":
-                            format = "hsl";
-                            break;
+                        case "rgba":
+                            return color.simple ? "hsl" : "hsla";
+
+                        case "hsl":
+                        case "hsla":
+                            if (color.nickname)
+                                return "nickname";
+                            if (color.simple)
+                                return color.hasShortHex() ? "shorthex" : "hex";
+                            else
+                                return "original";
 
                         case "shorthex":
-                            format = "hex";
-                            break;
+                            return "hex";
 
                         case "hex":
-                            format = "rgb";
-                            break;
+                            return "original";
 
                         case "nickname":
-                            if (color.simple) {
-                                if (color.hasShortHex())
-                                    format = "shorthex";
-                                else
-                                    format = "hex";
-                                break;
-                            }
-
-                            format = "rgba";
-                            break;
-
-                        case "hsl":
-                            if (color.nickname)
-                                format = "nickname";
-                            else if (color.hasShortHex())
-                                format = "shorthex";
+                            if (color.simple)
+                                return color.hasShortHex() ? "shorthex" : "hex";
                             else
-                                format = "hex";
-                            break;
-
-                        case "rgba":
-                            format = "hsla";
-                            break;
+                                return "original";
 
-                        case "hsla":
-                            if (color.nickname)
-                                format = "nickname";
-                            else
-                                format = "rgba";
-                            break;
+                        default:
+                            return null;
                     }
+                }
+
+                function changeColorDisplay(event)
+                {
+                    do {
+                        format = nextFormat(format);
+                        var currentValue = color.toString(format || "");
+                    } while (format && currentValue === color.value && format !== "original");
 
-                    colorValueElement.textContent = color.toString(format);
+                    if (format)
+                        colorValueElement.textContent = currentValue;
                 }
 
                 var container = document.createDocumentFragment();

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list