Title: [175932] trunk/Source/WebCore
Revision
175932
Author
[email protected]
Date
2014-11-11 08:31:44 -0800 (Tue, 11 Nov 2014)

Log Message

Move '-webkit-marquee-speed' CSS property to the new StyleBuilder
https://bugs.webkit.org/show_bug.cgi?id=138595

Reviewed by Antti Koivisto.

Move '-webkit-marquee-speed' CSS property from DeprecatedStyleBuilder
to the new StyleBuilder by adding a new MarqueeSpeed Converter.

No new tests, no behavior change.

* css/CSSPropertyNames.in:
* css/DeprecatedStyleBuilder.cpp:
(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
(WebCore::ApplyPropertyMarqueeSpeed::applyValue): Deleted.
(WebCore::ApplyPropertyMarqueeSpeed::createHandler): Deleted.
* css/StyleBuilderConverter.h:
(WebCore::StyleBuilderConverter::convertMarqueeSpeed):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (175931 => 175932)


--- trunk/Source/WebCore/ChangeLog	2014-11-11 16:29:23 UTC (rev 175931)
+++ trunk/Source/WebCore/ChangeLog	2014-11-11 16:31:44 UTC (rev 175932)
@@ -1,3 +1,23 @@
+2014-11-11  Chris Dumez  <[email protected]>
+
+        Move '-webkit-marquee-speed' CSS property to the new StyleBuilder
+        https://bugs.webkit.org/show_bug.cgi?id=138595
+
+        Reviewed by Antti Koivisto.
+
+        Move '-webkit-marquee-speed' CSS property from DeprecatedStyleBuilder
+        to the new StyleBuilder by adding a new MarqueeSpeed Converter.
+
+        No new tests, no behavior change.
+
+        * css/CSSPropertyNames.in:
+        * css/DeprecatedStyleBuilder.cpp:
+        (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
+        (WebCore::ApplyPropertyMarqueeSpeed::applyValue): Deleted.
+        (WebCore::ApplyPropertyMarqueeSpeed::createHandler): Deleted.
+        * css/StyleBuilderConverter.h:
+        (WebCore::StyleBuilderConverter::convertMarqueeSpeed):
+
 2014-10-07  Sergio Villar Senin  <[email protected]>
 
         [CSS Grid Layout] Limit the size of explicit/implicit grid

Modified: trunk/Source/WebCore/css/CSSPropertyNames.in (175931 => 175932)


--- trunk/Source/WebCore/css/CSSPropertyNames.in	2014-11-11 16:29:23 UTC (rev 175931)
+++ trunk/Source/WebCore/css/CSSPropertyNames.in	2014-11-11 16:31:44 UTC (rev 175932)
@@ -421,7 +421,7 @@
 -webkit-marquee-direction [NewStyleBuilder]
 -webkit-marquee-increment [NewStyleBuilder, Custom=Value]
 -webkit-marquee-repetition
--webkit-marquee-speed
+-webkit-marquee-speed [NewStyleBuilder, Converter=MarqueeSpeed]
 -webkit-marquee-style [NewStyleBuilder, TypeName=EMarqueeBehavior, NameForMethods=MarqueeBehavior]
 -webkit-mask
 -webkit-mask-box-image [NewStyleBuilder, Initial=initialNinePieceImage, Converter=BorderMask<CSSPropertyWebkitMaskBoxImage>]

Modified: trunk/Source/WebCore/css/DeprecatedStyleBuilder.cpp (175931 => 175932)


--- trunk/Source/WebCore/css/DeprecatedStyleBuilder.cpp	2014-11-11 16:29:23 UTC (rev 175931)
+++ trunk/Source/WebCore/css/DeprecatedStyleBuilder.cpp	2014-11-11 16:31:44 UTC (rev 175932)
@@ -1051,40 +1051,6 @@
     }
 };
 
-class ApplyPropertyMarqueeSpeed {
-public:
-    static void applyValue(CSSPropertyID, StyleResolver* styleResolver, CSSValue* value)
-    {
-        if (!is<CSSPrimitiveValue>(*value))
-            return;
-
-        CSSPrimitiveValue& primitiveValue = downcast<CSSPrimitiveValue>(*value);
-        if (CSSValueID ident = primitiveValue.getValueID()) {
-            switch (ident) {
-            case CSSValueSlow:
-                styleResolver->style()->setMarqueeSpeed(500); // 500 msec.
-                break;
-            case CSSValueNormal:
-                styleResolver->style()->setMarqueeSpeed(85); // 85msec. The WinIE default.
-                break;
-            case CSSValueFast:
-                styleResolver->style()->setMarqueeSpeed(10); // 10msec. Super fast.
-                break;
-            default:
-                break;
-            }
-        } else if (primitiveValue.isTime())
-            styleResolver->style()->setMarqueeSpeed(primitiveValue.computeTime<int, CSSPrimitiveValue::Milliseconds>());
-        else if (primitiveValue.isNumber()) // For scrollamount support.
-            styleResolver->style()->setMarqueeSpeed(primitiveValue.getIntValue());
-    }
-    static PropertyHandler createHandler()
-    {
-        PropertyHandler handler = ApplyPropertyDefault<int, &RenderStyle::marqueeSpeed, int, &RenderStyle::setMarqueeSpeed, int, &RenderStyle::initialMarqueeSpeed>::createHandler();
-        return PropertyHandler(handler.inheritFunction(), handler.initialFunction(), &applyValue);
-    }
-};
-
 class ApplyPropertyTextUnderlinePosition {
 public:
     static void applyValue(CSSPropertyID, StyleResolver* styleResolver, CSSValue* value)
@@ -1626,7 +1592,6 @@
     setPropertyHandler(CSSPropertyWebkitFontSmoothing, ApplyPropertyFont<FontSmoothingMode, &FontDescription::fontSmoothing, &FontDescription::setFontSmoothing, AutoSmoothing>::createHandler());
     setPropertyHandler(CSSPropertyWebkitFontVariantLigatures, ApplyPropertyFontVariantLigatures::createHandler());
     setPropertyHandler(CSSPropertyWebkitMarqueeRepetition, ApplyPropertyMarqueeRepetition::createHandler());
-    setPropertyHandler(CSSPropertyWebkitMarqueeSpeed, ApplyPropertyMarqueeSpeed::createHandler());
     setPropertyHandler(CSSPropertyWebkitMaskBoxImageOutset, ApplyPropertyBorderImageModifier<BorderMask, Outset>::createHandler());
     setPropertyHandler(CSSPropertyWebkitMaskBoxImageRepeat, ApplyPropertyBorderImageModifier<BorderMask, Repeat>::createHandler());
     setPropertyHandler(CSSPropertyWebkitMaskBoxImageSlice, ApplyPropertyBorderImageModifier<BorderMask, Slice>::createHandler());

Modified: trunk/Source/WebCore/css/StyleBuilderConverter.h (175931 => 175932)


--- trunk/Source/WebCore/css/StyleBuilderConverter.h	2014-11-11 16:29:23 UTC (rev 175931)
+++ trunk/Source/WebCore/css/StyleBuilderConverter.h	2014-11-11 16:31:44 UTC (rev 175932)
@@ -63,6 +63,7 @@
     static ETextAlign convertTextAlign(StyleResolver&, CSSValue&);
     static PassRefPtr<ClipPathOperation> convertClipPath(StyleResolver&, CSSValue&);
     static EResize convertResize(StyleResolver&, CSSValue&);
+    static int convertMarqueeSpeed(StyleResolver&, CSSValue&);
 
 private:
     static Length convertToRadiusLength(CSSToLengthConversionData&, CSSPrimitiveValue&);
@@ -387,6 +388,35 @@
     return resize;
 }
 
+inline int StyleBuilderConverter::convertMarqueeSpeed(StyleResolver&, CSSValue& value)
+{
+    auto& primitiveValue = downcast<CSSPrimitiveValue>(value);
+    int speed = 85;
+    if (CSSValueID ident = primitiveValue.getValueID()) {
+        switch (ident) {
+        case CSSValueSlow:
+            speed = 500; // 500 msec.
+            break;
+        case CSSValueNormal:
+            speed = 85; // 85msec. The WinIE default.
+            break;
+        case CSSValueFast:
+            speed = 10; // 10msec. Super fast.
+            break;
+        default:
+            ASSERT_NOT_REACHED();
+            break;
+        }
+    } else if (primitiveValue.isTime())
+        speed = primitiveValue.computeTime<int, CSSPrimitiveValue::Milliseconds>();
+    else {
+        // For scrollamount support.
+        ASSERT(primitiveValue.isNumber());
+        speed = primitiveValue.getIntValue();
+    }
+    return speed;
+}
+
 } // namespace WebCore
 
 #endif // StyleBuilderConverter_h
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to