From 2f296972c0a68260f6c61167eee002006f210904 Mon Sep 17 00:00:00 2001 From: Victor Pontis Date: Tue, 11 Apr 2017 21:37:29 -0700 Subject: [PATCH] Keep selection while applying Transform.unwrapNodeByKey (#717) Transforms should be applied in an order so that the selection is preserved. This replaces "remove --> insert" with "move --> remove". Close #670 --- src/transforms/by-key.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/transforms/by-key.js b/src/transforms/by-key.js index 325020606..67e5bd9d0 100644 --- a/src/transforms/by-key.js +++ b/src/transforms/by-key.js @@ -361,9 +361,8 @@ Transforms.unwrapNodeByKey = (transform, key, options = {}) => { if (parent.nodes.size === 1) { - // Remove the parent and replace it by the node itself. - transform.removeNodeByKey(parent.key, { normalize: false }) - transform.insertNodeByKey(parentParent.key, parentIndex, node, options) + transform.moveNodeByKey(key, parentParent.key, parentIndex, { normalize: false }) + transform.removeNodeByKey(parent.key, options) } else if (isFirst) {