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

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

Issue 2897193005: Generate diffs for all fields on StyleRareInheritedData (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.cpp
diff --git a/third_party/WebKit/Source/core/style/ComputedStyle.cpp b/third_party/WebKit/Source/core/style/ComputedStyle.cpp
index 4d7efa94d904859440e5315eff086c09ad17e6d0..4998250bcb0a731fb8a6404813628d6ddb6dc6fe 100644
--- a/third_party/WebKit/Source/core/style/ComputedStyle.cpp
+++ b/third_party/WebKit/Source/core/style/ComputedStyle.cpp
@@ -650,67 +650,9 @@ bool ComputedStyle::DiffNeedsFullLayoutAndPaintInvalidation(
}
}
- if (rare_inherited_data_.Get() != other.rare_inherited_data_.Get()) {
- if (rare_inherited_data_->highlight_ !=
- other.rare_inherited_data_->highlight_ ||
- rare_inherited_data_->text_indent_ !=
- other.rare_inherited_data_->text_indent_ ||
- rare_inherited_data_->text_align_last_ !=
- other.rare_inherited_data_->text_align_last_ ||
- rare_inherited_data_->text_indent_line_ !=
- other.rare_inherited_data_->text_indent_line_ ||
- rare_inherited_data_->effective_zoom_ !=
- other.rare_inherited_data_->effective_zoom_ ||
- rare_inherited_data_->word_break_ !=
- other.rare_inherited_data_->word_break_ ||
- rare_inherited_data_->overflow_wrap_ !=
- other.rare_inherited_data_->overflow_wrap_ ||
- rare_inherited_data_->line_break_ !=
- other.rare_inherited_data_->line_break_ ||
- rare_inherited_data_->text_security_ !=
- other.rare_inherited_data_->text_security_ ||
- rare_inherited_data_->hyphens_ !=
- other.rare_inherited_data_->hyphens_ ||
- rare_inherited_data_->hyphenation_limit_before_ !=
- other.rare_inherited_data_->hyphenation_limit_before_ ||
- rare_inherited_data_->hyphenation_limit_after_ !=
- other.rare_inherited_data_->hyphenation_limit_after_ ||
- rare_inherited_data_->hyphenation_string_ !=
- other.rare_inherited_data_->hyphenation_string_ ||
- rare_inherited_data_->respect_image_orientation_ !=
- other.rare_inherited_data_->respect_image_orientation_ ||
- rare_inherited_data_->ruby_position_ !=
- other.rare_inherited_data_->ruby_position_ ||
- rare_inherited_data_->text_emphasis_mark_ !=
- other.rare_inherited_data_->text_emphasis_mark_ ||
- rare_inherited_data_->text_emphasis_position_ !=
- other.rare_inherited_data_->text_emphasis_position_ ||
- rare_inherited_data_->text_emphasis_custom_mark_ !=
- other.rare_inherited_data_->text_emphasis_custom_mark_ ||
- rare_inherited_data_->text_justify_ !=
- other.rare_inherited_data_->text_justify_ ||
- rare_inherited_data_->text_orientation_ !=
- other.rare_inherited_data_->text_orientation_ ||
- rare_inherited_data_->text_combine_ !=
- other.rare_inherited_data_->text_combine_ ||
- rare_inherited_data_->tab_size_ !=
- other.rare_inherited_data_->tab_size_ ||
- rare_inherited_data_->text_size_adjust_ !=
- other.rare_inherited_data_->text_size_adjust_ ||
- rare_inherited_data_->list_style_image_ !=
- other.rare_inherited_data_->list_style_image_ ||
- rare_inherited_data_->line_height_step_ !=
- other.rare_inherited_data_->line_height_step_ ||
- rare_inherited_data_->text_stroke_width_ !=
- other.rare_inherited_data_->text_stroke_width_)
- return true;
- }
-
if (IsDisplayTableType(Display())) {
- if (BorderCollapse() != other.BorderCollapse() ||
- EmptyCells() != other.EmptyCells() ||
- CaptionSide() != other.CaptionSide() ||
- TableLayout() != other.TableLayout())
+ if (ComputedStyleBase::
+ DiffNeedsFullLayoutAndPaintInvalidationDisplayTableType(other))
return true;
// In the collapsing border model, 'hidden' suppresses other borders, while
@@ -734,8 +676,8 @@ bool ComputedStyle::DiffNeedsFullLayoutAndPaintInvalidation(
other.BorderRightStyle() == EBorderStyle::kHidden)))
return true;
} else if (Display() == EDisplay::kListItem) {
- if (ListStyleType() != other.ListStyleType() ||
- ListStylePosition() != other.ListStylePosition())
+ if (ComputedStyleBase::
+ DiffNeedsFullLayoutAndPaintInvalidationDisplayListItem(other))
return true;
}
@@ -812,16 +754,6 @@ bool ComputedStyle::DiffNeedsPaintInvalidationObject(
*background_data_ != *other.background_data_)
return true;
- if (rare_inherited_data_.Get() != other.rare_inherited_data_.Get()) {
- if (rare_inherited_data_->user_modify_ !=
- other.rare_inherited_data_->user_modify_ ||
- rare_inherited_data_->user_select_ !=
- other.rare_inherited_data_->user_select_ ||
- rare_inherited_data_->image_rendering_ !=
- other.rare_inherited_data_->image_rendering_)
- return true;
- }
-
if (rare_non_inherited_data_.Get() != other.rare_non_inherited_data_.Get()) {
if (rare_non_inherited_data_->user_drag !=
other.rare_non_inherited_data_->user_drag ||
@@ -999,6 +931,23 @@ void ComputedStyle::UpdatePropertySpecificDifferences(
CaretColor() != CaretColor() ||
VisitedLinkCaretColor() != other.VisitedLinkCaretColor()))) {
diff.SetTextDecorationOrColorChanged();
+ } else {
shend 2017/05/25 08:20:19 Where did this come from?
nainar 2017/05/25 08:38:50 Aaaah landed two patches and the diff changed. Upl
+ if (rare_non_inherited_data_.Get() !=
+ other.rare_non_inherited_data_.Get() &&
+ (rare_non_inherited_data_->text_decoration_style_ !=
+ other.rare_non_inherited_data_->text_decoration_style_ ||
+ rare_non_inherited_data_->text_decoration_color_ !=
+ other.rare_non_inherited_data_->text_decoration_color_ ||
+ rare_non_inherited_data_->visited_link_text_decoration_color_ !=
+ other.rare_non_inherited_data_
+ ->visited_link_text_decoration_color_)) {
+ diff.SetTextDecorationOrColorChanged();
+ } else {
+ if (ComputedStyleBase::
+ UpdatePropertySpecificDifferencesTextDecorationOrColor(other)) {
+ diff.SetTextDecorationOrColorChanged();
+ }
+ }
}
}

Powered by Google App Engine
This is Rietveld 408576698