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

Unified Diff: third_party/WebKit/Source/core/style/ComputedStyle.h

Issue 2871463002: Move StyleRareInheritedData accessors to be inline in ComputedStyle. (Closed)
Patch Set: Created 3 years, 7 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/style/ComputedStyle.h
diff --git a/third_party/WebKit/Source/core/style/ComputedStyle.h b/third_party/WebKit/Source/core/style/ComputedStyle.h
index 90342759e0e5d6ae4ceaf73ec095d9f5234f190e..fd70aed9f706f10478dfdcb3056bcbc8fa6ea503 100644
--- a/third_party/WebKit/Source/core/style/ComputedStyle.h
+++ b/third_party/WebKit/Source/core/style/ComputedStyle.h
@@ -1855,9 +1855,10 @@ class CORE_EXPORT ComputedStyle : public ComputedStyleBase,
}
// -webkit-text-emphasis-color (aka -epub-text-emphasis-color)
- void SetTextEmphasisColor(const StyleColor& c) {
- SET_VAR_WITH_SETTER(rare_inherited_data_, TextEmphasisColor,
- SetTextEmphasisColor, c);
+ void SetTextEmphasisColor(const StyleColor& color) {
+ SET_VAR(rare_inherited_data_, text_emphasis_color_, color.Resolve(Color()));
+ SET_VAR(rare_inherited_data_, text_emphasis_color_is_current_color_,
+ color.IsCurrentColor());
}
// -webkit-text-emphasis-position
@@ -1909,9 +1910,10 @@ class CORE_EXPORT ComputedStyle : public ComputedStyleBase,
}
// -webkit-text-fill-color
- void SetTextFillColor(const StyleColor& c) {
- SET_VAR_WITH_SETTER(rare_inherited_data_, TextFillColor, SetTextFillColor,
- c);
+ void SetTextFillColor(const StyleColor& color) {
+ SET_VAR(rare_inherited_data_, text_fill_color_, color.Resolve(Color()));
+ SET_VAR(rare_inherited_data_, text_fill_color_is_current_color_,
+ color.IsCurrentColor());
}
// -webkit-text-security
@@ -1924,9 +1926,10 @@ class CORE_EXPORT ComputedStyle : public ComputedStyleBase,
}
// -webkit-text-stroke-color
- void SetTextStrokeColor(const StyleColor& c) {
- SET_VAR_WITH_SETTER(rare_inherited_data_, TextStrokeColor,
- SetTextStrokeColor, c);
+ void SetTextStrokeColor(const StyleColor& color) {
+ SET_VAR(rare_inherited_data_, text_stroke_color_, color.Resolve(Color()));
+ SET_VAR(rare_inherited_data_, text_stroke_color_is_current_color_,
+ color.IsCurrentColor());
}
// -webkit-text-stroke-width
@@ -1966,8 +1969,11 @@ class CORE_EXPORT ComputedStyle : public ComputedStyleBase,
}
// caret-color
- void SetCaretColor(const StyleAutoColor& c) {
- SET_VAR_WITH_SETTER(rare_inherited_data_, CaretColor, SetCaretColor, c);
+ void SetCaretColor(const StyleAutoColor& color) {
+ SET_VAR(rare_inherited_data_, caret_color_, color.Resolve(Color()));
+ SET_VAR(rare_inherited_data_, caret_color_is_current_color_,
+ color.IsCurrentColor());
+ SET_VAR(rare_inherited_data_, caret_color_is_auto_, color.IsAutoColor());
}
// Font properties.
@@ -3392,21 +3398,34 @@ class CORE_EXPORT ComputedStyle : public ComputedStyleBase,
void SetVisitedLinkTextDecorationColor(const StyleColor& v) {
SET_VAR(rare_non_inherited_data_, visited_link_text_decoration_color_, v);
}
- void SetVisitedLinkTextEmphasisColor(const StyleColor& v) {
- SET_VAR_WITH_SETTER(rare_inherited_data_, VisitedLinkTextEmphasisColor,
- SetVisitedLinkTextEmphasisColor, v);
- }
- void SetVisitedLinkTextFillColor(const StyleColor& v) {
- SET_VAR_WITH_SETTER(rare_inherited_data_, VisitedLinkTextFillColor,
- SetVisitedLinkTextFillColor, v);
- }
- void SetVisitedLinkTextStrokeColor(const StyleColor& v) {
- SET_VAR_WITH_SETTER(rare_inherited_data_, VisitedLinkTextStrokeColor,
- SetVisitedLinkTextStrokeColor, v);
- }
- void SetVisitedLinkCaretColor(const StyleAutoColor& v) {
- SET_VAR_WITH_SETTER(rare_inherited_data_, VisitedLinkCaretColor,
- SetVisitedLinkCaretColor, v);
+ void SetVisitedLinkTextEmphasisColor(const StyleColor& color) {
+ SET_VAR(rare_inherited_data_, visited_link_text_emphasis_color_,
+ color.Resolve(Color()));
+ SET_VAR(rare_inherited_data_,
+ visited_link_text_emphasis_color_is_current_color_,
+ color.IsCurrentColor());
+ }
+ void SetVisitedLinkTextFillColor(const StyleColor& color) {
+ SET_VAR(rare_inherited_data_, visited_link_text_fill_color_,
+ color.Resolve(Color()));
+ SET_VAR(rare_inherited_data_,
+ visited_link_text_fill_color_is_current_color_,
+ color.IsCurrentColor());
+ }
+ void SetVisitedLinkTextStrokeColor(const StyleColor& color) {
+ SET_VAR(rare_inherited_data_, visited_link_text_stroke_color_,
+ color.Resolve(Color()));
+ SET_VAR(rare_inherited_data_,
+ visited_link_text_stroke_color_is_current_color_,
+ color.IsCurrentColor());
+ }
+ void SetVisitedLinkCaretColor(const StyleAutoColor& color) {
+ SET_VAR(rare_inherited_data_, visited_link_caret_color_,
+ color.Resolve(Color()));
+ SET_VAR(rare_inherited_data_, visited_link_caret_color_is_current_color_,
+ color.IsCurrentColor());
+ SET_VAR(rare_inherited_data_, visited_link_caret_color_is_auto_,
+ color.IsAutoColor());
}
static bool IsDisplayBlockContainer(EDisplay display) {
@@ -3466,7 +3485,11 @@ class CORE_EXPORT ComputedStyle : public ComputedStyleBase,
return background_data_->background_color_;
}
StyleAutoColor CaretColor() const {
- return rare_inherited_data_->CaretColor();
+ if (rare_inherited_data_->caret_color_is_current_color_)
+ return StyleAutoColor::CurrentColor();
+ if (rare_inherited_data_->caret_color_is_auto_)
+ return StyleAutoColor::AutoColor();
+ return StyleAutoColor(rare_inherited_data_->caret_color_);
}
Color GetColor() const;
StyleColor ColumnRuleColor() const {
@@ -3476,16 +3499,26 @@ class CORE_EXPORT ComputedStyle : public ComputedStyleBase,
return rare_non_inherited_data_->outline_.GetColor();
}
StyleColor TextEmphasisColor() const {
- return rare_inherited_data_->TextEmphasisColor();
+ return rare_inherited_data_->text_emphasis_color_is_current_color_
+ ? StyleColor::CurrentColor()
+ : StyleColor(rare_inherited_data_->text_emphasis_color_);
}
StyleColor TextFillColor() const {
- return rare_inherited_data_->TextFillColor();
+ return rare_inherited_data_->text_fill_color_is_current_color_
+ ? StyleColor::CurrentColor()
+ : StyleColor(rare_inherited_data_->text_fill_color_);
}
StyleColor TextStrokeColor() const {
- return rare_inherited_data_->TextStrokeColor();
+ return rare_inherited_data_->text_stroke_color_is_current_color_
+ ? StyleColor::CurrentColor()
+ : StyleColor(rare_inherited_data_->text_stroke_color_);
}
StyleAutoColor VisitedLinkCaretColor() const {
- return rare_inherited_data_->VisitedLinkCaretColor();
+ if (rare_inherited_data_->visited_link_caret_color_is_current_color_)
+ return StyleAutoColor::CurrentColor();
+ if (rare_inherited_data_->visited_link_caret_color_is_auto_)
+ return StyleAutoColor::AutoColor();
+ return StyleAutoColor(rare_inherited_data_->visited_link_caret_color_);
}
Color VisitedLinkColor() const;
StyleColor VisitedLinkBackgroundColor() const {
@@ -3517,13 +3550,24 @@ class CORE_EXPORT ComputedStyle : public ComputedStyleBase,
return rare_non_inherited_data_->visited_link_text_decoration_color_;
}
StyleColor VisitedLinkTextEmphasisColor() const {
- return rare_inherited_data_->VisitedLinkTextEmphasisColor();
+ return rare_inherited_data_
+ ->visited_link_text_emphasis_color_is_current_color_
+ ? StyleColor::CurrentColor()
+ : StyleColor(
+ rare_inherited_data_->visited_link_text_emphasis_color_);
}
StyleColor VisitedLinkTextFillColor() const {
- return rare_inherited_data_->VisitedLinkTextFillColor();
+ return rare_inherited_data_->visited_link_text_fill_color_is_current_color_
+ ? StyleColor::CurrentColor()
+ : StyleColor(
+ rare_inherited_data_->visited_link_text_fill_color_);
}
StyleColor VisitedLinkTextStrokeColor() const {
- return rare_inherited_data_->VisitedLinkTextStrokeColor();
+ return rare_inherited_data_
+ ->visited_link_text_stroke_color_is_current_color_
+ ? StyleColor::CurrentColor()
+ : StyleColor(
+ rare_inherited_data_->visited_link_text_stroke_color_);
}
StyleColor DecorationColorIncludingFallback(bool visited_link) const;

Powered by Google App Engine
This is Rietveld 408576698