| Index: Source/core/rendering/style/NinePieceImage.h
|
| diff --git a/Source/core/rendering/style/NinePieceImage.h b/Source/core/rendering/style/NinePieceImage.h
|
| index 3bf40c17408d06ddc4a73ae394bc46cb984a2154..6474c7f1918eab3e1667b531b5345876a6b20cdd 100644
|
| --- a/Source/core/rendering/style/NinePieceImage.h
|
| +++ b/Source/core/rendering/style/NinePieceImage.h
|
| @@ -28,6 +28,7 @@
|
| #include "core/rendering/style/StyleImage.h"
|
| #include "platform/LayoutUnit.h"
|
| #include "platform/LengthBox.h"
|
| +#include "platform/LengthOrNumberBox.h"
|
|
|
| namespace WebCore {
|
|
|
| @@ -48,8 +49,8 @@ public:
|
| unsigned verticalRule : 2; // ENinePieceImageRule
|
| RefPtr<StyleImage> image;
|
| LengthBox imageSlices;
|
| - LengthBox borderSlices;
|
| - LengthBox outset;
|
| + LengthOrNumberBox borderSlices;
|
| + LengthOrNumberBox outset;
|
|
|
| private:
|
| NinePieceImageData();
|
| @@ -59,7 +60,7 @@ private:
|
| class NinePieceImage {
|
| public:
|
| NinePieceImage();
|
| - NinePieceImage(PassRefPtr<StyleImage>, LengthBox imageSlices, bool fill, LengthBox borderSlices, LengthBox outset, ENinePieceImageRule horizontalRule, ENinePieceImageRule verticalRule);
|
| + NinePieceImage(PassRefPtr<StyleImage>, LengthBox imageSlices, bool fill, LengthOrNumberBox borderSlices, LengthOrNumberBox outset, ENinePieceImageRule horizontalRule, ENinePieceImageRule verticalRule);
|
|
|
| bool operator==(const NinePieceImage& other) const { return m_data == other.m_data; }
|
| bool operator!=(const NinePieceImage& other) const { return m_data != other.m_data; }
|
| @@ -74,11 +75,11 @@ public:
|
| bool fill() const { return m_data->fill; }
|
| void setFill(bool fill) { m_data.access()->fill = fill; }
|
|
|
| - const LengthBox& borderSlices() const { return m_data->borderSlices; }
|
| - void setBorderSlices(const LengthBox& slices) { m_data.access()->borderSlices = slices; }
|
| + const LengthOrNumberBox& borderSlices() const { return m_data->borderSlices; }
|
| + void setBorderSlices(const LengthOrNumberBox& slices) { m_data.access()->borderSlices = slices; }
|
|
|
| - const LengthBox& outset() const { return m_data->outset; }
|
| - void setOutset(const LengthBox& outset) { m_data.access()->outset = outset; }
|
| + const LengthOrNumberBox& outset() const { return m_data->outset; }
|
| + void setOutset(const LengthOrNumberBox& outset) { m_data.access()->outset = outset; }
|
|
|
| ENinePieceImageRule horizontalRule() const { return static_cast<ENinePieceImageRule>(m_data->horizontalRule); }
|
| void setHorizontalRule(ENinePieceImageRule rule) { m_data.access()->horizontalRule = rule; }
|
| @@ -112,14 +113,14 @@ public:
|
| {
|
| m_data.access()->imageSlices = LengthBox(0);
|
| m_data.access()->fill = true;
|
| - m_data.access()->borderSlices = LengthBox();
|
| + m_data.access()->borderSlices = LengthOrNumberBox();
|
| }
|
|
|
| - static LayoutUnit computeOutset(Length outsetSide, LayoutUnit borderSide)
|
| + static LayoutUnit computeOutset(LengthOrNumber outsetSide, LayoutUnit borderSide)
|
| {
|
| - if (outsetSide.isRelative())
|
| - return outsetSide.value() * borderSide;
|
| - return outsetSide.value();
|
| + if (outsetSide.isNumber())
|
| + return outsetSide.number() * borderSide;
|
| + return outsetSide.length().value();
|
| }
|
|
|
| private:
|
|
|