Added support for multiple line breaks (#235)

diff --git a/packages/flutter_markdown/example/lib/main.dart b/packages/flutter_markdown/example/lib/main.dart
index 7fbc4cf..c1cd4d8 100644
--- a/packages/flutter_markdown/example/lib/main.dart
+++ b/packages/flutter_markdown/example/lib/main.dart
@@ -93,6 +93,19 @@
 Enjoy!
 
 [Google]: https://www.google.com/
+
+## Line Breaks
+
+This is an example of how to create line breaks (tab or two whitespaces):
+
+line 1
+  
+   
+line 2
+  
+  
+  
+line 3
 """;
 
 void main() {
diff --git a/packages/flutter_markdown/lib/src/widget.dart b/packages/flutter_markdown/lib/src/widget.dart
index 1bb30b4..47671ff 100644
--- a/packages/flutter_markdown/lib/src/widget.dart
+++ b/packages/flutter_markdown/lib/src/widget.dart
@@ -161,7 +161,12 @@
 
     _disposeRecognizers();
 
-    final List<String> lines = widget.data.split(RegExp(r'\r?\n'));
+    /// FIXME: Enhance it using a single RegEx
+    final List<String> lines = widget.data
+        .replaceAll(RegExp(r'[ ]{2}(\r?\n)'), '  &amp;')
+        .split(RegExp(r'\r?\n'))
+        .map((e) => e?.replaceAll(RegExp(r'  &amp;'), '  \n'))
+        .toList();
     final md.Document document = md.Document(
       extensionSet: widget.extensionSet ?? md.ExtensionSet.gitHubFlavored,
       inlineSyntaxes: [TaskListSyntax()],
diff --git a/packages/flutter_markdown/test/flutter_markdown_test.dart b/packages/flutter_markdown/test/flutter_markdown_test.dart
index f663bca..552df22 100644
--- a/packages/flutter_markdown/test/flutter_markdown_test.dart
+++ b/packages/flutter_markdown/test/flutter_markdown_test.dart
@@ -69,7 +69,7 @@
     _expectTextStrings(widgets, <String>['strikethrough']);
   });
 
-  testWidgets('Line break', (WidgetTester tester) async {
+  testWidgets('Single line break', (WidgetTester tester) async {
     await tester
         .pumpWidget(_boilerplate(const MarkdownBody(data: 'line 1  \nline 2')));
 
@@ -79,6 +79,16 @@
     _expectTextStrings(widgets, <String>['line 1\nline 2']);
   });
 
+  testWidgets('Multiple line breaks', (WidgetTester tester) async {
+    await tester
+        .pumpWidget(_boilerplate(const MarkdownBody(data: 'line 1  \n  \nline 2')));
+
+    final Iterable<Widget> widgets = tester.allWidgets;
+    _expectWidgetTypes(
+        widgets, <Type>[Directionality, MarkdownBody, Column, Wrap, RichText]);
+    _expectTextStrings(widgets, <String>['line 1\n\nline 2']);
+  });
+
   testWidgets('Non-applicable line break', (WidgetTester tester) async {
     final body = MarkdownBody(data: 'line 1.\nline 2.');
     await tester.pumpWidget(_boilerplate(body));