| Index: ui/gfx/render_text.cc
|
| diff --git a/ui/gfx/render_text.cc b/ui/gfx/render_text.cc
|
| index f2f691ee9e283f214f5606dc22edb72a7ecd425d..ff0de8a91607e43c872a0a07e10ab2ef1e3dd533 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"
|
| @@ -255,6 +256,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;
|
| @@ -830,6 +835,8 @@ void RenderText::Draw(Canvas* canvas) {
|
|
|
| if (!text().empty()) {
|
| internal::SkiaTextRenderer renderer(canvas);
|
| + if (halo_effect())
|
| + renderer.SetHaloEffect();
|
| DrawVisualText(&renderer);
|
| }
|
|
|
|
|