diff --git a/packages/flutter_markdown/CHANGELOG.md b/packages/flutter_markdown/CHANGELOG.md index b6df88cad18e..dba9cb958789 100644 --- a/packages/flutter_markdown/CHANGELOG.md +++ b/packages/flutter_markdown/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.7.4 + +* Makes paragraphs in blockquotes soft-wrap like a normal `
` instead of hard-wrapping like a `` block.
+
## 0.7.3+2
* Resolves an issue where code blocks in markdown were not highlighted during selection.
diff --git a/packages/flutter_markdown/lib/src/builder.dart b/packages/flutter_markdown/lib/src/builder.dart
index 0ec8833c42c0..3a0f4b15e993 100644
--- a/packages/flutter_markdown/lib/src/builder.dart
+++ b/packages/flutter_markdown/lib/src/builder.dart
@@ -362,7 +362,7 @@ class MarkdownBuilder implements md.NodeVisitor {
style: _isInBlockquote
? styleSheet.blockquote!.merge(_inlines.last.style)
: _inlines.last.style,
- text: _isInBlockquote ? text.text : trimText(text.text),
+ text: trimText(text.text),
recognizer: _linkHandlers.isNotEmpty ? _linkHandlers.last : null,
),
textAlign: _textAlignForBlockTag(_currentBlockTag),
diff --git a/packages/flutter_markdown/pubspec.yaml b/packages/flutter_markdown/pubspec.yaml
index c6008933453c..f0ac1fd83533 100644
--- a/packages/flutter_markdown/pubspec.yaml
+++ b/packages/flutter_markdown/pubspec.yaml
@@ -4,7 +4,7 @@ description: A Markdown renderer for Flutter. Create rich text output,
formatted with simple Markdown tags.
repository: https://github.com/flutter/packages/tree/main/packages/flutter_markdown
issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+flutter_markdown%22
-version: 0.7.3+2
+version: 0.7.4
environment:
sdk: ^3.3.0
diff --git a/packages/flutter_markdown/test/blockquote_test.dart b/packages/flutter_markdown/test/blockquote_test.dart
index 2d1fa3e30a4c..07e88f4c9e09 100644
--- a/packages/flutter_markdown/test/blockquote_test.dart
+++ b/packages/flutter_markdown/test/blockquote_test.dart
@@ -25,6 +25,20 @@ void defineTests() {
},
);
+ testWidgets(
+ 'soft wrapping in blockquote',
+ (WidgetTester tester) async {
+ await tester.pumpWidget(
+ boilerplate(
+ const MarkdownBody(data: '> soft\n> wrap'),
+ ),
+ );
+
+ final Iterable widgets = tester.allWidgets;
+ expectTextStrings(widgets, ['soft wrap']);
+ },
+ );
+
testWidgets(
'should work with styling',
(WidgetTester tester) async {