Repository navigation
Design doc: Soft hyphen (U+00AD) rendering #185154
Description
Document Link
https://flutter.dev/go/soft-hyphens
(Redirect PR: flutter/website#13282 — once merged the go-link will resolve; direct doc: https://docs.google.com/document/d/1w_d53wb-RMuwXmXIPq67JrZYG97XF1mDaKEoKBDt8-E)
What problem are you solving?
Flutter text does not render a visible hyphen glyph when a line breaks on a soft hyphen (U+00AD). The line break happens, but the hyphen never appears — in contrast to every major web browser, native mobile text engine, and the Unicode specification. This makes Flutter unsuitable for any workflow relying on manual hyphenation markup (multilingual CMS content, justified/narrow-column text, long compound words in German/Dutch/Finnish, etc.).
Tracking issue: #18443 (open since 2018, 302+ reactions).
The underlying Skia fix has already landed (CL 1208837 at 98daf58d) and has rolled into flutter/flutter. The behavior is gated behind ParagraphStyle::setRenderSoftHyphens() and Flutter needs to opt in. The design doc proposes a two-stage rollout: (1) enable globally in the engine (draft PR #185152), and (2) expose a Dart-level hyphens API on ParagraphStyle/TextStyle mirroring CSS hyphens.
Activity
Support soft hyphen (U+00AD) rendering with a Hyphens API (flutter#18…