| Index: ui/gfx/render_text.cc
|
| diff --git a/ui/gfx/render_text.cc b/ui/gfx/render_text.cc
|
| index b9397062d6ce91035cd763c1c8d2561fbdbcedf5..b0702d4fef6403d421c019b338028df5051de849 100644
|
| --- a/ui/gfx/render_text.cc
|
| +++ b/ui/gfx/render_text.cc
|
| @@ -23,6 +23,7 @@
|
| #include "third_party/skia/include/core/SkFontStyle.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"
|
| @@ -256,6 +257,10 @@ void SkiaTextRenderer::SetShader(sk_sp<SkShader> shader) {
|
| paint_.setShader(std::move(shader));
|
| }
|
|
|
| +void SkiaTextRenderer::SetHaloEffect() {
|
| + paint_.setImageFilter(SkDilateImageFilter::Make(1, 1, nullptr));
|
| +}
|
| +
|
| void SkiaTextRenderer::SetUnderlineMetrics(SkScalar thickness,
|
| SkScalar position) {
|
| underline_thickness_ = thickness;
|
| @@ -849,6 +854,8 @@ void RenderText::Draw(Canvas* canvas) {
|
|
|
| if (!text().empty()) {
|
| internal::SkiaTextRenderer renderer(canvas);
|
| + if (halo_effect())
|
| + renderer.SetHaloEffect();
|
| DrawVisualText(&renderer);
|
| }
|
|
|
|
|