diff --git a/flutter_quill_extensions/lib/embeds/image/editor/image_embed.dart b/flutter_quill_extensions/lib/embeds/image/editor/image_embed.dart index ecdefe2d..6dad3301 100644 --- a/flutter_quill_extensions/lib/embeds/image/editor/image_embed.dart +++ b/flutter_quill_extensions/lib/embeds/image/editor/image_embed.dart @@ -56,8 +56,9 @@ class QuillEditorImageEmbedBuilder extends EmbedBuilder { QuillSharedExtensionsConfigurations.get(context: context) .imageSaverService; return GestureDetector( - onTap: configurations.onImageClicked ?? - () => showDialog( + onTap: configurations.onImageClicked != null + ? () => configurations.onImageClicked!(imageSource) + : () => showDialog( context: context, builder: (_) => FlutterQuillLocalizationsWidget( child: ImageOptionsMenu( diff --git a/flutter_quill_extensions/lib/models/config/editor/image/image.dart b/flutter_quill_extensions/lib/models/config/editor/image/image.dart index 208568bd..79778a88 100644 --- a/flutter_quill_extensions/lib/models/config/editor/image/image.dart +++ b/flutter_quill_extensions/lib/models/config/editor/image/image.dart @@ -1,6 +1,5 @@ import 'dart:io' show File; -import 'package:flutter/foundation.dart' show VoidCallback; import 'package:flutter_quill/extensions.dart'; import 'package:meta/meta.dart' show immutable; @@ -103,8 +102,9 @@ class QuillEditorImageEmbedConfigurations { /// What should happen when the image is pressed? /// - /// By default will show `ImageOptionsMenu` dialog - final VoidCallback? onImageClicked; + /// By default will show `ImageOptionsMenu` dialog. If you want to handle what happens + /// to the image when it's clicked, you can pass a callback to this property. + final void Function(String imageSource)? onImageClicked; static ImageEmbedBuilderOnRemovedCallback get defaultOnImageRemovedCallback { return (imageUrl) async {