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 8608e69b..ca8e52ce 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 ae0a6553..03c1bdf1 100644 --- a/lib/widgets/toolbar.dart +++ b/lib/widgets/toolbar.dart @@ -784,6 +784,9 @@ class _HistoryButtonState extends State { } void _setIconColor() { + + if(!mounted) return; + if (widget.undo) { setState(() { _iconColor = widget.controller.hasUndo