This commit is contained in:
otsmr 2025-02-10 22:00:46 +01:00
parent 4bedbc7933
commit 645eb452c6
2 changed files with 11 additions and 5 deletions

View file

@ -42,7 +42,7 @@ class _TextViewState extends State<TextLayer> {
@override
Widget build(BuildContext context) {
if (isDeleted) return Container();
if (widget.layerData.isDeleted) return Container();
if (widget.layerData.isEditing) {
return Positioned(
@ -58,6 +58,7 @@ class _TextViewState extends State<TextLayer> {
autofocus: true,
onEditingComplete: () {
setState(() {
widget.layerData.isDeleted = textController.text == "";
widget.layerData.isEditing = false;
widget.layerData.text = textController.text;
});
@ -65,9 +66,12 @@ class _TextViewState extends State<TextLayer> {
onTapOutside: (a) {
widget.layerData.text = textController.text;
Future.delayed(Duration(milliseconds: 100), () {
setState(() {
widget.layerData.isEditing = false;
});
if (context.mounted) {
setState(() {
widget.layerData.isDeleted = textController.text == "";
widget.layerData.isEditing = false;
});
}
});
},
decoration: InputDecoration(
@ -98,7 +102,7 @@ class _TextViewState extends State<TextLayer> {
});
},
onScaleEnd: (d) {
if (deleteLayer) isDeleted = true;
if (deleteLayer) widget.layerData.isDeleted = true;
elementIsScaled = false;
setState(() {});
},

View file

@ -56,6 +56,8 @@ class _ShareImageEditorView extends State<ShareImageEditorView> {
FontAwesomeIcons.font,
tooltipText: context.lang.addTextItem,
onPressed: () async {
layers = layers.where((x) => !x.isDeleted).toList();
if (layers.any((x) => x.isEditing)) return;
undoLayers.clear();
removedLayers.clear();
layers.add(TextLayerData());