|
|
|
@ -7,13 +7,13 @@ import '../widgets/controller.dart'; |
|
|
|
|
|
|
|
|
|
Tuple2<int, Embed> getEmbedNode(QuillController controller, int offset) { |
|
|
|
|
var offset = controller.selection.start; |
|
|
|
|
var imageNode = controller.queryNode(offset); |
|
|
|
|
if (imageNode == null || !(imageNode is Embed)) { |
|
|
|
|
var embedNode = controller.queryNode(offset); |
|
|
|
|
if (embedNode == null || !(embedNode is Embed)) { |
|
|
|
|
offset = max(0, offset - 1); |
|
|
|
|
imageNode = controller.queryNode(offset); |
|
|
|
|
embedNode = controller.queryNode(offset); |
|
|
|
|
} |
|
|
|
|
if (imageNode != null && imageNode is Embed) { |
|
|
|
|
return Tuple2(offset, imageNode); |
|
|
|
|
if (embedNode != null && embedNode is Embed) { |
|
|
|
|
return Tuple2(offset, embedNode); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return throw 'Embed node not found by offset $offset'; |
|
|
|
|