| Index: third_party/WebKit/Source/core/animation/LengthListPropertyFunctions.cpp
|
| diff --git a/third_party/WebKit/Source/core/animation/LengthListPropertyFunctions.cpp b/third_party/WebKit/Source/core/animation/LengthListPropertyFunctions.cpp
|
| deleted file mode 100644
|
| index 62680c3450d5a13992161e2c35fd823e47a464e1..0000000000000000000000000000000000000000
|
| --- a/third_party/WebKit/Source/core/animation/LengthListPropertyFunctions.cpp
|
| +++ /dev/null
|
| @@ -1,139 +0,0 @@
|
| -// Copyright 2015 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#include "core/animation/LengthListPropertyFunctions.h"
|
| -
|
| -#include "core/style/ComputedStyle.h"
|
| -
|
| -namespace blink {
|
| -
|
| -namespace {
|
| -
|
| -const FillLayer* getFillLayer(CSSPropertyID property, const ComputedStyle& style)
|
| -{
|
| - switch (property) {
|
| - case CSSPropertyBackgroundPositionX:
|
| - case CSSPropertyBackgroundPositionY:
|
| - return &style.backgroundLayers();
|
| - case CSSPropertyWebkitMaskPositionX:
|
| - case CSSPropertyWebkitMaskPositionY:
|
| - return &style.maskLayers();
|
| - default:
|
| - ASSERT_NOT_REACHED();
|
| - return nullptr;
|
| - }
|
| -}
|
| -
|
| -FillLayer* accessFillLayer(CSSPropertyID property, ComputedStyle& style)
|
| -{
|
| - switch (property) {
|
| - case CSSPropertyBackgroundPositionX:
|
| - case CSSPropertyBackgroundPositionY:
|
| - return &style.accessBackgroundLayers();
|
| - case CSSPropertyWebkitMaskPositionX:
|
| - case CSSPropertyWebkitMaskPositionY:
|
| - return &style.accessMaskLayers();
|
| - default:
|
| - ASSERT_NOT_REACHED();
|
| - return nullptr;
|
| - }
|
| -}
|
| -
|
| -struct FillLayerMethods {
|
| - FillLayerMethods(CSSPropertyID property)
|
| - {
|
| - switch (property) {
|
| - case CSSPropertyBackgroundPositionX:
|
| - case CSSPropertyWebkitMaskPositionX:
|
| - isSet = &FillLayer::isXPositionSet;
|
| - get = &FillLayer::xPosition;
|
| - set = &FillLayer::setXPosition;
|
| - clear = &FillLayer::clearXPosition;
|
| - break;
|
| - case CSSPropertyBackgroundPositionY:
|
| - case CSSPropertyWebkitMaskPositionY:
|
| - isSet = &FillLayer::isYPositionSet;
|
| - get = &FillLayer::yPosition;
|
| - set = &FillLayer::setYPosition;
|
| - clear = &FillLayer::clearYPosition;
|
| - break;
|
| - default:
|
| - break;
|
| - }
|
| - }
|
| -
|
| - bool (FillLayer::*isSet)() const;
|
| - const Length& (FillLayer::*get)() const;
|
| - void (FillLayer::*set)(const Length&);
|
| - void (FillLayer::*clear)();
|
| -};
|
| -
|
| -} // namespace
|
| -
|
| -ValueRange LengthListPropertyFunctions::valueRange(CSSPropertyID property)
|
| -{
|
| - switch (property) {
|
| - case CSSPropertyBackgroundPositionX:
|
| - case CSSPropertyBackgroundPositionY:
|
| - case CSSPropertyWebkitMaskPositionX:
|
| - case CSSPropertyWebkitMaskPositionY:
|
| - return ValueRangeAll;
|
| -
|
| - case CSSPropertyStrokeDasharray:
|
| - return ValueRangeNonNegative;
|
| -
|
| - default:
|
| - ASSERT_NOT_REACHED();
|
| - return ValueRangeAll;
|
| - }
|
| -}
|
| -
|
| -Vector<Length> LengthListPropertyFunctions::getInitialLengthList(CSSPropertyID property)
|
| -{
|
| - return getLengthList(property, *ComputedStyle::initialStyle());
|
| -}
|
| -
|
| -Vector<Length> LengthListPropertyFunctions::getLengthList(CSSPropertyID property, const ComputedStyle& style)
|
| -{
|
| - Vector<Length> result;
|
| -
|
| - if (property == CSSPropertyStrokeDasharray) {
|
| - if (style.strokeDashArray())
|
| - result.appendVector(style.strokeDashArray()->vector());
|
| - return result;
|
| - }
|
| -
|
| - const FillLayer* fillLayer = getFillLayer(property, style);
|
| - FillLayerMethods fillLayerMethods(property);
|
| - while (fillLayer && (fillLayer->*fillLayerMethods.isSet)()) {
|
| - result.append((fillLayer->*fillLayerMethods.get)());
|
| - fillLayer = fillLayer->next();
|
| - }
|
| - return result;
|
| -}
|
| -
|
| -void LengthListPropertyFunctions::setLengthList(CSSPropertyID property, ComputedStyle& style, Vector<Length>&& lengthList)
|
| -{
|
| - if (property == CSSPropertyStrokeDasharray) {
|
| - style.setStrokeDashArray(lengthList.isEmpty() ? nullptr : RefVector<Length>::create(std::move(lengthList)));
|
| - return;
|
| - }
|
| -
|
| - FillLayer* fillLayer = accessFillLayer(property, style);
|
| - FillLayer* prev = nullptr;
|
| - FillLayerMethods fillLayerMethods(property);
|
| - for (size_t i = 0; i < lengthList.size(); i++) {
|
| - if (!fillLayer)
|
| - fillLayer = prev->ensureNext();
|
| - (fillLayer->*fillLayerMethods.set)(lengthList[i]);
|
| - prev = fillLayer;
|
| - fillLayer = fillLayer->next();
|
| - }
|
| - while (fillLayer) {
|
| - (fillLayer->*fillLayerMethods.clear)();
|
| - fillLayer = fillLayer->next();
|
| - }
|
| -}
|
| -
|
| -} // namespace blink
|
|
|