From e81f4e24e99ea63b86944f843210e68ec89d97e1 Mon Sep 17 00:00:00 2001 From: mjadobson Date: Tue, 11 Jul 2017 21:14:39 +0100 Subject: [PATCH] Fix image drop in example (#919) * Fix image drop in example Dropped images were being inserted at previous selection rather than drop target. * Fix linting errors --- examples/images/index.js | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/examples/images/index.js b/examples/images/index.js index abc313de1..4db6e8b9d 100644 --- a/examples/images/index.js +++ b/examples/images/index.js @@ -161,7 +161,7 @@ class Images extends React.Component { const src = window.prompt('Enter the URL of the image:') if (!src) return let { state } = this.state - state = this.insertImage(state, src) + state = this.insertImage(state, null, src) this.onChange(state) } @@ -219,7 +219,7 @@ class Images extends React.Component { reader.addEventListener('load', () => { state = editor.getState() - state = this.insertImage(state, reader.result) + state = this.insertImage(state, data.target, reader.result) editor.onChange(state) }) @@ -256,7 +256,7 @@ class Images extends React.Component { onPasteText = (e, data, state) => { if (!isUrl(data.text)) return if (!isImage(data.text)) return - return this.insertImage(state, data.text) + return this.insertImage(state, data.target, data.text) } /** @@ -267,9 +267,12 @@ class Images extends React.Component { * @return {State} */ - insertImage = (state, src) => { - return state - .transform() + insertImage = (state, target, src) => { + const transform = state.transform() + + if (target) transform.select(target) + + return transform .insertBlock({ type: 'image', isVoid: true,