Index: Source/core/rendering/style/CollapsedBorderValue.h |
diff --git a/Source/core/rendering/style/CollapsedBorderValue.h b/Source/core/rendering/style/CollapsedBorderValue.h |
index ef16dba2322c88fb4f9205330d499d9cfd2e3a51..30716ec70355d82bbc90428d57de37c59f5a2660 100644 |
--- a/Source/core/rendering/style/CollapsedBorderValue.h |
+++ b/Source/core/rendering/style/CollapsedBorderValue.h |
@@ -34,6 +34,7 @@ public: |
CollapsedBorderValue() |
: m_color(0) |
, m_colorIsValid(false) |
+ , m_currentColor(false) |
, m_width(0) |
, m_style(BNONE) |
, m_precedence(BOFF) |
@@ -41,9 +42,10 @@ public: |
{ |
} |
- CollapsedBorderValue(const BorderValue& border, const Color& color, EBorderPrecedence precedence) |
- : m_color(color.rgb()) |
+ CollapsedBorderValue(const BorderValue& border, const StyleColor& color, EBorderPrecedence precedence) |
+ : m_color(color.color()) |
, m_colorIsValid(color.isValid()) |
+ , m_currentColor(color.isCurrentColor()) |
, m_width(border.nonZero() ? border.width() : 0) |
, m_style(border.style()) |
, m_precedence(precedence) |
@@ -54,7 +56,7 @@ public: |
unsigned width() const { return m_style > BHIDDEN ? m_width : 0; } |
EBorderStyle style() const { return static_cast<EBorderStyle>(m_style); } |
bool exists() const { return m_precedence != BOFF; } |
- Color color() const { return Color(m_color, m_colorIsValid); } |
+ StyleColor color() const { return StyleColor(m_color, m_colorIsValid, m_currentColor); } |
bool isTransparent() const { return m_transparent; } |
EBorderPrecedence precedence() const { return static_cast<EBorderPrecedence>(m_precedence); } |
@@ -64,9 +66,10 @@ public: |
} |
private: |
- RGBA32 m_color; |
+ Color m_color; |
unsigned m_colorIsValid : 1; |
- unsigned m_width : 23; |
+ unsigned m_currentColor : 1; |
+ unsigned m_width : 22; |
unsigned m_style : 4; // EBorderStyle |
unsigned m_precedence : 3; // EBorderPrecedence |
unsigned m_transparent : 1; |