Index: third_party/WebKit/Source/core/paint/InlineTextBoxPainter.cpp |
diff --git a/third_party/WebKit/Source/core/paint/InlineTextBoxPainter.cpp b/third_party/WebKit/Source/core/paint/InlineTextBoxPainter.cpp |
index 80a7b90c9b77fd15493499141bc206560a440f0a..461d06ed4e99ad462d1c6f018b3ff58acf0ee1e7 100644 |
--- a/third_party/WebKit/Source/core/paint/InlineTextBoxPainter.cpp |
+++ b/third_party/WebKit/Source/core/paint/InlineTextBoxPainter.cpp |
@@ -81,7 +81,8 @@ static LineLayoutItem EnclosingUnderlineObject( |
return nullptr; |
const ComputedStyle& style_to_use = current.StyleRef(first_line); |
- if (style_to_use.GetTextDecoration() & kTextDecorationUnderline) |
+ if (EnumHasFlags(style_to_use.GetTextDecoration(), |
+ TextDecoration::kUnderline)) |
return current; |
current = current.Parent(); |
@@ -591,10 +592,10 @@ static void PaintDecorationsExceptLineThrough( |
for (const AppliedTextDecoration& decoration : decorations) { |
TextDecoration lines = decoration.Lines(); |
if (flip_underline_and_overline) { |
- lines = static_cast<TextDecoration>( |
- lines ^ (kTextDecorationUnderline | kTextDecorationOverline)); |
+ lines ^= (TextDecoration::kUnderline | TextDecoration::kOverline); |
} |
- if ((lines & kTextDecorationUnderline) && decoration_info.font_data) { |
+ if (EnumHasFlags(lines, TextDecoration::kUnderline) && |
+ decoration_info.font_data) { |
const int underline_offset = |
ComputeUnderlineOffset(underline_position, *decoration_info.style, |
decoration_info.font_data->GetFontMetrics(), |
@@ -612,7 +613,7 @@ static void PaintDecorationsExceptLineThrough( |
} |
decoration_painter.Paint(); |
} |
- if (lines & kTextDecorationOverline) { |
+ if (EnumHasFlags(lines, TextDecoration::kOverline)) { |
const int overline_offset = |
ComputeOverlineOffset(*decoration_info.style, &box); |
AppliedDecorationPainter decoration_painter( |
@@ -630,7 +631,8 @@ static void PaintDecorationsExceptLineThrough( |
} |
// We could instead build a vector of the TextDecoration instances needing |
// line-through but this is a rare case so better to avoid vector overhead. |
- has_line_through_decoration |= ((lines & kTextDecorationLineThrough) != 0); |
+ has_line_through_decoration |= |
+ EnumHasFlags(lines, TextDecoration::kLineThrough); |
} |
} |
@@ -644,7 +646,7 @@ static void PaintDecorationsOnlyLineThrough( |
context.SetStrokeThickness(decoration_info.thickness); |
for (const AppliedTextDecoration& decoration : decorations) { |
TextDecoration lines = decoration.Lines(); |
- if (lines & kTextDecorationLineThrough) { |
+ if (EnumHasFlags(lines, TextDecoration::kLineThrough)) { |
const float line_through_offset = 2 * decoration_info.baseline / 3; |
AppliedDecorationPainter decoration_painter( |
context, decoration_info, line_through_offset, decoration, |
@@ -860,7 +862,7 @@ void InlineTextBoxPainter::Paint(const PaintInfo& paint_info, |
// Paint text decorations except line-through. |
DecorationInfo decoration_info; |
bool has_line_through_decoration = false; |
- if (style_to_use.TextDecorationsInEffect() != kTextDecorationNone && |
+ if (style_to_use.TextDecorationsInEffect() != TextDecoration::kNone && |
inline_text_box_.Truncation() != kCFullTruncation) { |
ComputeDecorationInfo(decoration_info, inline_text_box_, box_origin, |
style_to_use.AppliedTextDecorations()); |