Closed
Description
Is there an existing issue for this?
- I have searched the existing issues
- I have read the guide to filing a bug
Steps to reproduce
The code Text('underline, dotted', TextStyle(decoration: TextDecoration.underline, decorationStyle: TextDecorationStyle.dotted))
renders like this:

with a solid line, when it should render like this:

Expected results
I tried all the decoration styles for underline and expected this (which is what I see without Impeller):

Actual results
But got this with Impeller:

Code sample
Code sample
import 'package:flutter/material.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
theme: ThemeData(
colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
useMaterial3: true,
),
home: const MyHomePage(),
);
}
}
class MyHomePage extends StatelessWidget {
const MyHomePage({super.key});
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
backgroundColor: Theme.of(context).colorScheme.inversePrimary,
title: const Text('Impeller Text Decoration Test'),
),
body: ListView(
children: const <Widget>[
DecoratedText(TextDecoration.underline, TextDecorationStyle.solid),
DecoratedText(TextDecoration.underline, TextDecorationStyle.dashed),
DecoratedText(TextDecoration.underline, TextDecorationStyle.dotted),
DecoratedText(TextDecoration.underline, TextDecorationStyle.double),
DecoratedText(TextDecoration.underline, TextDecorationStyle.wavy),
],
),
);
}
}
class DecoratedText extends StatelessWidget {
const DecoratedText(this.decoration, this.decorationStyle, {super.key});
final TextDecoration decoration;
final TextDecorationStyle decorationStyle;
@override
Widget build(BuildContext context) {
return Center(
child: Text(
'${decoration.desc}, ${decorationStyle.desc}',
style: TextStyle(
fontSize: 22,
decoration: decoration,
decorationStyle: decorationStyle,
),
),
);
}
}
extension on Object {
String get desc => toString().split('.').last;
}
Screenshots or Video
Logs
Logs
[Paste your logs here]
Flutter Doctor output
Doctor output
[✓] Flutter (Channel stable, 3.10.0, on macOS 13.3.1 22E772610a darwin-arm64, locale en-US)
• Flutter version 3.10.0 on channel stable at /Users/ronbooth/Development/flutter
• Upstream repository https://github.com/flutter/flutter.git
• Framework revision 84a1e904f4 (3 days ago), 2023-05-09 07:41:44 -0700
• Engine revision d44b5a94c9
• Dart version 3.0.0
• DevTools version 2.23.1
[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
• Android SDK at /Users/ronbooth/Library/Android/sdk
• Platform android-33, build-tools 31.0.0
• Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)
• All Android licenses accepted.
[✓] Xcode - develop for iOS and macOS (Xcode 14.3)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Build 14E222b
• CocoaPods version 1.12.1
[✓] Chrome - develop for the web
• Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
[✓] Android Studio (version 2022.1)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)
[✓] VS Code (version 1.78.2)
• VS Code at /Applications/Visual Studio Code.app/Contents
• Flutter extension version 3.64.0
[✓] Connected device (3 available)
• iPad mini (6th generation) (mobile) • 46CD1EBD-35A0-466C-B2BF-2F36D4A57344 • ios •
com.apple.CoreSimulator.SimRuntime.iOS-16-4 (simulator)
• macOS (desktop) • macos • darwin-arm64 • macOS 13.3.1
22E772610a darwin-arm64
• Chrome (web) • chrome • web-javascript • Google Chrome
113.0.5672.92
[✓] Network resources
• All expected network resources are available.```
</details>