getPropertyValue for -webkit-marquee returns null, should compute the shorthand value
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 27 Feb 2013 06:06:28 +0000 (06:06 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 27 Feb 2013 06:06:28 +0000 (06:06 +0000)
https://bugs.webkit.org/show_bug.cgi?id=110816

Patch by Uday Kiran <udaykiran@motorola.com> on 2013-02-26
Reviewed by Alexander Pavlov.

Source/WebCore:

Compute the shorthand value for '-webkit-marquee' specified in CSS.

Test: fast/css/getPropertyValue-webkit-marquee.html

* css/StylePropertySet.cpp:
(WebCore::StylePropertySet::getPropertyValue):

LayoutTests:

Added testcases to check getPropertyValue for -webkit-marquee shorthand.

* fast/css/getPropertyValue-webkit-marquee-expected.txt: Added.
* fast/css/getPropertyValue-webkit-marquee.html: Added.

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

LayoutTests/ChangeLog
LayoutTests/fast/css/getPropertyValue-webkit-marquee-expected.txt [new file with mode: 0644]
LayoutTests/fast/css/getPropertyValue-webkit-marquee.html [new file with mode: 0644]
Source/WebCore/ChangeLog
Source/WebCore/css/StylePropertySet.cpp

index 384e6e5..0a1ac21 100644 (file)
@@ -1,3 +1,15 @@
+2013-02-26  Uday Kiran  <udaykiran@motorola.com>
+
+        getPropertyValue for -webkit-marquee returns null, should compute the shorthand value
+        https://bugs.webkit.org/show_bug.cgi?id=110816
+
+        Reviewed by Alexander Pavlov.
+
+        Added testcases to check getPropertyValue for -webkit-marquee shorthand.
+
+        * fast/css/getPropertyValue-webkit-marquee-expected.txt: Added.
+        * fast/css/getPropertyValue-webkit-marquee.html: Added.
+
 2013-02-26  Adam Barth  <abarth@webkit.org>
 
         Unreviewed.
diff --git a/LayoutTests/fast/css/getPropertyValue-webkit-marquee-expected.txt b/LayoutTests/fast/css/getPropertyValue-webkit-marquee-expected.txt
new file mode 100644 (file)
index 0000000..809c0b4
--- /dev/null
@@ -0,0 +1,25 @@
+Bug 110816: getPropertyValue for -webkit-marquee returns null, should compute the shorthand value
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS webkitMarqueeValue("marquee1") is 'forwards medium 10 slide normal'
+PASS webkitMarqueeValue("marquee2") is 'auto large 10 slide'
+PASS webkitMarqueeValue("marquee3") is 'forwards infinite slide normal'
+PASS webkitMarqueeValue("marquee4") is 'forwards medium slide normal'
+PASS webkitMarqueeValue("marquee5") is 'medium 10 slide normal'
+PASS webkitMarqueeValue("marquee6") is 'forwards small normal'
+PASS webkitMarqueeValue("marquee7") is 'forwards medium infinite'
+PASS webkitMarqueeValue("marquee8") is 'slide fast'
+PASS webkitMarqueeValue("marquee9") is 'forwards'
+PASS webkitMarqueeValue("marquee10") is 'alternate'
+PASS webkitMarqueeValue("marquee11") is 'infinite'
+NOTE: 'foo' is an illegal CSS value for '-webkit-marquee'.
+PASS webkitMarqueeValue("marquee12") is null
+NOTE: If only few longhand properties are specified, getPropertyValue for shorthand property returns null.
+PASS webkitMarqueeValue("marquee13") is null
+PASS webkitMarqueeValue("marquee14") is null
+PASS successfullyParsed is true
+
+TEST COMPLETE
+          
diff --git a/LayoutTests/fast/css/getPropertyValue-webkit-marquee.html b/LayoutTests/fast/css/getPropertyValue-webkit-marquee.html
new file mode 100644 (file)
index 0000000..0b178bb
--- /dev/null
@@ -0,0 +1,62 @@
+<!DOCTYPE>
+<html>
+  <head>
+    <title>-webkit-marquee shorthand getPropertyValue test</title>
+    <style type="text/css">
+      .test {
+        display: inline-block;
+        height: 5em;
+        width: 10em;
+        overflow-x: -webkit-marquee;
+      }
+    </style>
+    <script src="../js/resources/js-test-pre.js"></script>
+    <script>
+      if (window.testRunner)
+        testRunner.dumpAsText();
+    </script>
+  </head>
+  <body>
+    <div id="marquee1" class="test" style="-webkit-marquee: forwards medium 10 slide normal;"></div>
+    <div id="marquee2" class="test" style="-webkit-marquee: auto large 10 slide;"></div>
+    <div id="marquee3" class="test" style="-webkit-marquee: forwards infinite slide normal;"></div>
+    <div id="marquee4" class="test" style="-webkit-marquee: forwards medium slide normal;"></div>
+    <div id="marquee5" class="test" style="-webkit-marquee: medium 10 slide normal;"></div>
+    <div id="marquee6" class="test" style="-webkit-marquee: forwards small normal;"></div>
+    <div id="marquee7" class="test" style="-webkit-marquee: forwards medium infinite;"></div>
+    <div id="marquee8" class="test" style="-webkit-marquee: slide fast;"></div>
+    <div id="marquee9" class="test" style="-webkit-marquee: forwards;"></div>
+    <div id="marquee10" class="test" style="-webkit-marquee: alternate;"></div>
+    <div id="marquee11" class="test" style="-webkit-marquee: infinite;"></div>
+    <div id="marquee12" class="test" style="-webkit-marquee: foo;"></div>
+    <div id="marquee13" class="test" style="-webkit-marquee-direction: forwards; -webkit-marquee-speed: fast;"></div>
+    <div id="marquee14" class="test" style="-webkit-marquee-repetition: infinite; -webkit-marquee-style: none;"></div>
+
+    <script>
+      description("<a href=\"https://bugs.webkit.org/show_bug.cgi?id=110816\">Bug 110816: getPropertyValue for -webkit-marquee returns null, should compute the shorthand value</a>");
+
+      function webkitMarqueeValue(id) {
+        var element = document.getElementById(id);
+        return element.style.getPropertyValue("-webkit-marquee");
+      }
+
+      shouldBe('webkitMarqueeValue("marquee1")', "'forwards medium 10 slide normal'");
+      shouldBe('webkitMarqueeValue("marquee2")', "'auto large 10 slide'");
+      shouldBe('webkitMarqueeValue("marquee3")', "'forwards infinite slide normal'");
+      shouldBe('webkitMarqueeValue("marquee4")', "'forwards medium slide normal'");
+      shouldBe('webkitMarqueeValue("marquee5")', "'medium 10 slide normal'");
+      shouldBe('webkitMarqueeValue("marquee6")', "'forwards small normal'");
+      shouldBe('webkitMarqueeValue("marquee7")', "'forwards medium infinite'");
+      shouldBe('webkitMarqueeValue("marquee8")', "'slide fast'");
+      shouldBe('webkitMarqueeValue("marquee9")', "'forwards'");
+      shouldBe('webkitMarqueeValue("marquee10")', "'alternate'");
+      shouldBe('webkitMarqueeValue("marquee11")', "'infinite'");
+      debug("NOTE: 'foo' is an illegal CSS value for '-webkit-marquee'.");
+      shouldBe('webkitMarqueeValue("marquee12")', "null");
+      debug("NOTE: If only few longhand properties are specified, getPropertyValue for shorthand property returns null.")
+      shouldBe('webkitMarqueeValue("marquee13")', "null");
+      shouldBe('webkitMarqueeValue("marquee14")', "null");
+    </script>
+    <script src="../js/resources/js-test-post.js"></script>
+  </body>
+</html>
index daa8aae..b518c20 100644 (file)
@@ -1,3 +1,17 @@
+2013-02-26  Uday Kiran  <udaykiran@motorola.com>
+
+        getPropertyValue for -webkit-marquee returns null, should compute the shorthand value
+        https://bugs.webkit.org/show_bug.cgi?id=110816
+
+        Reviewed by Alexander Pavlov.
+
+        Compute the shorthand value for '-webkit-marquee' specified in CSS.
+
+        Test: fast/css/getPropertyValue-webkit-marquee.html
+
+        * css/StylePropertySet.cpp:
+        (WebCore::StylePropertySet::getPropertyValue):
+
 2013-02-26  Kentaro Hara  <haraken@chromium.org>
 
         [V8] Remove Event::dataTransferAttrGetterCustom() and Event::valueAttrSetterCustom()
index 0634154..363ecf9 100644 (file)
@@ -174,6 +174,8 @@ String StylePropertySet::getPropertyValue(CSSPropertyID propertyID) const
         return get4Values(paddingShorthand());
     case CSSPropertyListStyle:
         return getShorthandValue(listStyleShorthand());
+    case CSSPropertyWebkitMarquee:
+        return getShorthandValue(webkitMarqueeShorthand());
     case CSSPropertyWebkitMaskPosition:
         return getLayeredShorthandValue(webkitMaskPositionShorthand());
     case CSSPropertyWebkitMaskRepeat: