Skip to content

Commit

Permalink
[bug-fix] delay the replacement of image placeholder for 1 cycle
Browse files Browse the repository at this point in the history
  • Loading branch information
lencyforce committed Apr 28, 2020
1 parent caad799 commit 0f87340
Showing 1 changed file with 15 additions and 20 deletions.
35 changes: 15 additions & 20 deletions image-handlers.js
Original file line number Diff line number Diff line change
Expand Up @@ -21,14 +21,7 @@ class ImageHandlers {

this.editor.options.image.handlers.imageDataURIUpload(imageDataUrl, type)
.then((imageUrl) => {

let index = self.removeImagePlaceholder(placeholderId);

if(index !== -1) {
let delta = new Delta().retain(index).insert({image: imageUrl});
self.editor.quill.updateContents(delta, "user");
}

self.replaceImagePlaceholderWithImage(placeholderId, imageUrl);
})
.catch((err) => {
self.removeImagePlaceholder(placeholderId);
Expand Down Expand Up @@ -64,6 +57,7 @@ class ImageHandlers {
self.replaceImagePlaceholderWithImage(toolbarPlaceholderId, imageUrl);
})
.catch((err) => {
self.removeImagePlaceholder(toolbarPlaceholderId);
self.error(err);
});

Expand Down Expand Up @@ -115,10 +109,10 @@ class ImageHandlers {
(imageUrl) => {
self.replaceImagePlaceholderWithImage(placeholderId, imageUrl);
}).catch(
(err) => {
self.removeImagePlaceholder(placeholderId);
self.error(err);
});
(err) => {
self.removeImagePlaceholder(placeholderId);
self.error(err);
});

}, 200);

Expand Down Expand Up @@ -204,16 +198,17 @@ class ImageHandlers {
setTimeout(() => {
let index = self.removeImagePlaceholder(placeholderId);
if(index !== -1) {
setTimeout(() => {
// save selection
let range = self.editor.quill.getSelection();

// save selection
let range = self.editor.quill.getSelection();

let dt = new Delta();
dt.retain(index).insert({image: imageSrc});
self.editor.quill.updateContents(dt, "user");
let dt = new Delta();
dt.retain(index).insert({image: imageSrc});
self.editor.quill.updateContents(dt, "user");

// restore selection
self.editor.quill.setSelection(range.index, range.length, "silent");
// restore selection
self.editor.quill.setSelection(range.index, range.length, "silent");
}, 100);
}
}, 1000);
}
Expand Down

0 comments on commit 0f87340

Please sign in to comment.