| Index: third_party/WebKit/Source/core/css/MediaQueryExp.cpp
|
| diff --git a/third_party/WebKit/Source/core/css/MediaQueryExp.cpp b/third_party/WebKit/Source/core/css/MediaQueryExp.cpp
|
| index 181b09657620cf8e24cb09ab735ca46666f07d1f..d889c2a5b906da46fc85d789fe604a53dbb8d0a1 100644
|
| --- a/third_party/WebKit/Source/core/css/MediaQueryExp.cpp
|
| +++ b/third_party/WebKit/Source/core/css/MediaQueryExp.cpp
|
| @@ -30,6 +30,8 @@
|
| #include "core/css/MediaQueryExp.h"
|
|
|
| #include "core/css/parser/CSSParserToken.h"
|
| +#include "core/css/serializer/CSSDeserializeStream.h"
|
| +#include "core/css/serializer/CSSSerializeStream.h"
|
| #include "core/html/parser/HTMLParserIdioms.h"
|
| #include "platform/Decimal.h"
|
| #include "platform/RuntimeEnabledFeatures.h"
|
| @@ -40,6 +42,32 @@ namespace blink {
|
|
|
| using namespace MediaFeatureNames;
|
|
|
| +void MediaQueryExpValue::serialize(CSSSerializeStream* stream) const
|
| +{
|
| + stream->writeEnumAsInt<CSSValueID>(id);
|
| + stream->writeDouble(value);
|
| + stream->writeEnumAsInt<CSSPrimitiveValue::UnitType>(unit);
|
| + stream->writeUnsigned(numerator);
|
| + stream->writeUnsigned(denominator);
|
| + stream->writeBool(isID);
|
| + stream->writeBool(isValue);
|
| + stream->writeBool(isRatio);
|
| +}
|
| +
|
| +MediaQueryExpValue MediaQueryExpValue::deserialize(CSSDeserializeStream* stream)
|
| +{
|
| + MediaQueryExpValue value;
|
| + value.id = stream->readIntAsEnum<CSSValueID>();
|
| + value.value = stream->readDouble();
|
| + value.unit = stream->readIntAsEnum<CSSPrimitiveValue::UnitType>();
|
| + value.numerator = stream->readUnsigned();
|
| + value.denominator = stream->readUnsigned();
|
| + value.isID = stream->readBool();
|
| + value.isValue = stream->readBool();
|
| + value.isRatio = stream->readBool();
|
| + return value;
|
| +}
|
| +
|
| static inline bool featureWithValidIdent(const String& mediaFeature, CSSValueID ident)
|
| {
|
| if (mediaFeature == displayModeMediaFeature)
|
| @@ -302,4 +330,17 @@ String MediaQueryExpValue::cssText() const
|
| return output.toString();
|
| }
|
|
|
| +void MediaQueryExp::serialize(CSSSerializeStream* stream) const
|
| +{
|
| + stream->writeString(m_mediaFeature);
|
| + m_expValue.serialize(stream);
|
| +}
|
| +
|
| +PassOwnPtrWillBeRawPtr<MediaQueryExp> MediaQueryExp::deserialize(CSSDeserializeStream* stream)
|
| +{
|
| + String mediaFeature = stream->readString();
|
| + MediaQueryExpValue expValue = MediaQueryExpValue::deserialize(stream);
|
| + return adoptPtrWillBeNoop(new MediaQueryExp(mediaFeature, expValue));
|
| +}
|
| +
|
| } // namespace
|
|
|