diff options
author | Simon Hausmann <simon.hausmann@nokia.com> | 2012-06-20 13:01:08 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@nokia.com> | 2012-06-20 13:01:08 +0200 |
commit | 49233e234e5c787396cadb2cea33b31ae0cd65c1 (patch) | |
tree | 5410cb9a8fd53168bb60d62c54b654d86f03c38d /Source/WebCore/css/CSSValue.cpp | |
parent | b211c645d8ab690f713515dfdc84d80b11c27d2c (diff) | |
download | qtwebkit-49233e234e5c787396cadb2cea33b31ae0cd65c1.tar.gz |
Imported WebKit commit 3a8c29f35d00659d2ce7a0ccdfa8304f14e82327 (http://svn.webkit.org/repository/webkit/trunk@120813)
New snapshot with Windows build fixes
Diffstat (limited to 'Source/WebCore/css/CSSValue.cpp')
-rw-r--r-- | Source/WebCore/css/CSSValue.cpp | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/Source/WebCore/css/CSSValue.cpp b/Source/WebCore/css/CSSValue.cpp index f568cc5f4..40a1bc09e 100644 --- a/Source/WebCore/css/CSSValue.cpp +++ b/Source/WebCore/css/CSSValue.cpp @@ -47,6 +47,9 @@ #include "CSSTimingFunctionValue.h" #include "CSSUnicodeRangeValue.h" #include "CSSValueList.h" +#if ENABLE(CSS_VARIABLES) +#include "CSSVariableValue.h" +#endif #include "FontValue.h" #include "FontFeatureValue.h" #include "ShadowValue.h" @@ -58,7 +61,7 @@ namespace WebCore { -class SameSizeAsCSSValue : public RefCounted<SameSizeAsCSSValue> { +struct SameSizeAsCSSValue : public RefCounted<SameSizeAsCSSValue> { uint32_t bitfields; }; @@ -185,6 +188,10 @@ String CSSValue::cssText() const return static_cast<const WebKitCSSShaderValue*>(this)->customCssText(); #endif #endif +#if ENABLE(CSS_VARIABLES) + case VariableClass: + return static_cast<const CSSVariableValue*>(this)->value(); +#endif #if ENABLE(SVG) case SVGColorClass: return static_cast<const SVGColor*>(this)->customCssText(); @@ -196,6 +203,22 @@ String CSSValue::cssText() const return String(); } +#if ENABLE(CSS_VARIABLES) +String CSSValue::serializeResolvingVariables(const HashMap<AtomicString, String>& variables) const +{ + switch (classType()) { + case PrimitiveClass: + return static_cast<const CSSPrimitiveValue*>(this)->customSerializeResolvingVariables(variables); + case ValueListClass: + return static_cast<const CSSValueList*>(this)->customSerializeResolvingVariables(variables); + case WebKitCSSTransformClass: + return static_cast<const WebKitCSSTransformValue*>(this)->customSerializeResolvingVariables(variables); + default: + return cssText(); + } +} +#endif + void CSSValue::destroy() { if (m_isTextClone) { @@ -296,6 +319,11 @@ void CSSValue::destroy() return; #endif #endif +#if ENABLE(CSS_VARIABLES) + case VariableClass: + delete static_cast<CSSVariableValue*>(this); + return; +#endif #if ENABLE(SVG) case SVGColorClass: delete static_cast<SVGColor*>(this); |