diff --git a/app/assets/sample_data.json b/app/assets/sample_data.json index 15cc2f2a..7fe41833 100644 --- a/app/assets/sample_data.json +++ b/app/assets/sample_data.json @@ -473,6 +473,30 @@ }, "insert": "Huge" }, + { + "attributes": { + "size": "15.0" + }, + "insert": "font size 15" + }, + { + "insert": " " + }, + { + "attributes": { + "size": "35" + }, + "insert": "font size 35" + }, + { + "insert": " " + }, + { + "attributes": { + "size": "20" + }, + "insert": "font size 20" + }, { "insert": "\n" } diff --git a/lib/widgets/text_line.dart b/lib/widgets/text_line.dart index 91be5a41..1ffead59 100644 --- a/lib/widgets/text_line.dart +++ b/lib/widgets/text_line.dart @@ -153,7 +153,11 @@ class TextLine extends StatelessWidget { res = res.merge(defaultStyles.sizeHuge); break; default: - throw "Invalid size ${size.value}"; + double fontSize = double.tryParse(size.value); + if (fontSize != null) { + res = res.merge(TextStyle(fontSize: fontSize)); + } else + throw "Invalid size ${size.value}"; } } diff --git a/lib/widgets/toolbar.dart b/lib/widgets/toolbar.dart index c7b4198c..60b1fb96 100644 --- a/lib/widgets/toolbar.dart +++ b/lib/widgets/toolbar.dart @@ -742,6 +742,9 @@ class _HistoryButtonState extends State { } void _setIconColor() { + + if(!mounted) return; + if (widget.undo) { setState(() { _iconColor = widget.controller.hasUndo