Chromium Code Reviews| Index: ui/gfx/render_text.cc |
| diff --git a/ui/gfx/render_text.cc b/ui/gfx/render_text.cc |
| index 1757575b32f7a5e094856d9c74d01ca199f9d3cc..eabef14aa906ca7652bab04329181c6ff53dfa0f 100644 |
| --- a/ui/gfx/render_text.cc |
| +++ b/ui/gfx/render_text.cc |
| @@ -22,6 +22,7 @@ |
| #include "third_party/skia/include/core/SkDrawLooper.h" |
| #include "third_party/skia/include/core/SkTypeface.h" |
| #include "third_party/skia/include/effects/SkGradientShader.h" |
| +#include "third_party/skia/include/effects/SkMorphologyImageFilter.h" |
| #include "ui/gfx/canvas.h" |
| #include "ui/gfx/geometry/insets.h" |
| #include "ui/gfx/geometry/safe_integer_conversions.h" |
| @@ -273,6 +274,10 @@ void SkiaTextRenderer::SetShader(SkShader* shader) { |
| paint_.setShader(shader); |
| } |
| +void SkiaTextRenderer::SetHaloEffect() { |
| + paint_.setImageFilter(SkDilateImageFilter::Create(1, 1)); |
|
Stephen White
2016/02/08 16:24:51
I think there's a memory leak here.
Objects in Sk
Stephen White
2016/02/08 16:27:10
(Or
auto filter = skia::AdoptRef(SkDilateImageFil
|
| +} |
| + |
| void SkiaTextRenderer::SetUnderlineMetrics(SkScalar thickness, |
| SkScalar position) { |
| underline_thickness_ = thickness; |
| @@ -828,6 +833,8 @@ void RenderText::Draw(Canvas* canvas) { |
| if (!text().empty()) { |
| internal::SkiaTextRenderer renderer(canvas); |
| + if (halo_effect()) |
| + renderer.SetHaloEffect(); |
| DrawVisualText(&renderer); |
| } |