diff --git a/lib/web_ui/lib/src/engine/text/paragraph.dart b/lib/web_ui/lib/src/engine/text/paragraph.dart index 17b1041a5e2126c9b133524f670a32f6f21ce8ec..1889a5e2416b7858b71b4c53934977a0d4bd3672 100644 --- a/lib/web_ui/lib/src/engine/text/paragraph.dart +++ b/lib/web_ui/lib/src/engine/text/paragraph.dart @@ -165,7 +165,8 @@ class EngineParagraph implements ui.Paragraph { } else { canDrawTextOnCanvas = _measurementResult.isSingleLine && _plainText != null && - _geometricStyle.ellipsis == null; + _geometricStyle.ellipsis == null && + _geometricStyle.shadows == null; } return canDrawTextOnCanvas && @@ -364,7 +365,9 @@ class EngineParagraphStyle implements ui.ParagraphStyle { double get _lineHeight { // TODO(mdebbar): Implement proper support for strut styles. // https://github.com/flutter/flutter/issues/32243 - if (_strutStyle == null || _strutStyle._height == null || _strutStyle._height == 0) { + if (_strutStyle == null || + _strutStyle._height == null || + _strutStyle._height == 0) { // When there's no strut height, always use paragraph style height. return _height; } @@ -908,6 +911,7 @@ class EngineParagraphBuilder implements ui.ParagraphBuilder { wordSpacing: wordSpacing, decoration: _textDecorationToCssString(decoration, decorationStyle), ellipsis: _paragraphStyle._ellipsis, + shadows: shadows, ), plainText: '', paint: paint, @@ -961,6 +965,7 @@ class EngineParagraphBuilder implements ui.ParagraphBuilder { wordSpacing: wordSpacing, decoration: _textDecorationToCssString(decoration, decorationStyle), ellipsis: _paragraphStyle._ellipsis, + shadows: shadows, ), plainText: plainText, paint: paint, diff --git a/lib/web_ui/lib/src/engine/text/ruler.dart b/lib/web_ui/lib/src/engine/text/ruler.dart index 8c17b3d2c10e35be4ac8d60ce9bf2cf5dcfc0f2a..ff90efa14518b5980fea6b883df5c3945c56674a 100644 --- a/lib/web_ui/lib/src/engine/text/ruler.dart +++ b/lib/web_ui/lib/src/engine/text/ruler.dart @@ -17,6 +17,7 @@ class ParagraphGeometricStyle { this.wordSpacing, this.decoration, this.ellipsis, + this.shadows, }); final ui.FontWeight fontWeight; @@ -29,6 +30,7 @@ class ParagraphGeometricStyle { final double wordSpacing; final String decoration; final String ellipsis; + final List shadows; // Since all fields above are primitives, cache hashcode since ruler lookups // use this style as key.