WIP: On paste, read content from internal clipboard via paste registry #148
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Partly addresses #147, facebookarchive/draft-js#787.
This is a hack – we leverage the internal Draft.js clipboard (containing a BlockMap ready to be inserted with
Modifier.insertFragment
) for pastes between different editors on the same page.This only works for editors within a single page, and won't work either if the page is reloaded between "copy" and "paste" (because of the editor refs registry at
window.editorRefs
).It also doesn't de-register editor refs – ideally those operations should be in the
componentDidMount
/componentWillUnmount
hooks, rather than in theref
callback.This is testable on http://localhost:4000/examples/, by copying the content of the "Custom formats" editor (which has a
DOCUMENT
entity, and also anEMBED
) into the "Wagtail features" editor. This is also demonstrable with theHORIZONTAL_RULE
in the "All" editor.