Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(197)

Unified Diff: third_party/WebKit/Source/core/css/resolver/StyleBuilderConverter.cpp

Issue 2247773004: [WIP] CSS Motion Path: offset-anchor and offset-position Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: offsetAnchor Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/css/resolver/StyleBuilderConverter.cpp
diff --git a/third_party/WebKit/Source/core/css/resolver/StyleBuilderConverter.cpp b/third_party/WebKit/Source/core/css/resolver/StyleBuilderConverter.cpp
index f5fd517ea29aae3e3030fdd65613753660cce5f8..fd01f29e4b7cdb24599d2493079efda145744774 100644
--- a/third_party/WebKit/Source/core/css/resolver/StyleBuilderConverter.cpp
+++ b/third_party/WebKit/Source/core/css/resolver/StyleBuilderConverter.cpp
@@ -744,23 +744,23 @@ float StyleBuilderConverter::convertNumberOrPercentage(StyleResolverState& state
return primitiveValue.getFloatValue() / 100.0f;
}
-StyleMotionRotation StyleBuilderConverter::convertMotionRotation(StyleResolverState&, const CSSValue& value)
+StyleOffsetRotation StyleBuilderConverter::convertOffsetRotation(StyleResolverState&, const CSSValue& value)
{
- return convertMotionRotation(value);
+ return convertOffsetRotation(value);
}
-StyleMotionRotation StyleBuilderConverter::convertMotionRotation(const CSSValue& value)
+StyleOffsetRotation StyleBuilderConverter::convertOffsetRotation(const CSSValue& value)
{
- StyleMotionRotation result(0, MotionRotationFixed);
+ StyleOffsetRotation result(0, OffsetRotationFixed);
const CSSValueList& list = toCSSValueList(value);
ASSERT(list.length() == 1 || list.length() == 2);
for (const auto& item : list) {
const CSSPrimitiveValue& primitiveValue = toCSSPrimitiveValue(*item);
if (primitiveValue.getValueID() == CSSValueAuto) {
- result.type = MotionRotationAuto;
+ result.type = OffsetRotationAuto;
} else if (primitiveValue.getValueID() == CSSValueReverse) {
- result.type = MotionRotationAuto;
+ result.type = OffsetRotationAuto;
result.angle += 180;
} else {
result.angle += primitiveValue.computeDegrees();
@@ -809,6 +809,14 @@ LengthPoint StyleBuilderConverter::convertPosition(StyleResolverState& state, co
);
}
+LengthPoint StyleBuilderConverter::convertPositionOrAuto(StyleResolverState& state, const CSSValue& value)
+{
+ if (value.isValuePair())
+ return convertPosition(state, value);
+ DCHECK(toCSSPrimitiveValue(value).getValueID() == CSSValueAuto);
+ return LengthPoint(Length(Auto), Length(Auto));
+}
+
static float convertPerspectiveLength(StyleResolverState& state, const CSSPrimitiveValue& primitiveValue)
{
return std::max(primitiveValue.computeLength<float>(state.cssToLengthConversionData()), 0.0f);

Powered by Google App Engine
This is Rietveld 408576698