From f91b8408a6e3c707f087537f42ca9c4159921f7e Mon Sep 17 00:00:00 2001 From: monfera Date: Wed, 27 Feb 2019 10:29:50 +0100 Subject: [PATCH] Fix: lose element selection on page flip --- .../plugins/canvas/public/state/middleware/aeroelastic.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/x-pack/plugins/canvas/public/state/middleware/aeroelastic.js b/x-pack/plugins/canvas/public/state/middleware/aeroelastic.js index fe88a21341301e..57296de0ccc0c8 100644 --- a/x-pack/plugins/canvas/public/state/middleware/aeroelastic.js +++ b/x-pack/plugins/canvas/public/state/middleware/aeroelastic.js @@ -18,7 +18,7 @@ import { } from '../actions/elements'; import { restoreHistory } from '../actions/history'; import { selectElement } from '../actions/transient'; -import { addPage, removePage, duplicatePage } from '../actions/pages'; +import { addPage, removePage, duplicatePage, gotoPage } from '../actions/pages'; import { appReady } from '../actions/app'; import { setWorkpad } from '../actions/workpad'; import { getNodes, getPages, getSelectedPage, getSelectedElement } from '../selectors/workpad'; @@ -59,6 +59,8 @@ const aeroelasticConfiguration = { const isGroupId = id => id.startsWith(aeroelasticConfiguration.groupName); +const pageChangerActions = [gotoPage.toString(), duplicatePage.toString(), addPage.toString()]; + /** * elementToShape * @@ -320,6 +322,10 @@ export const aeroelastic = ({ dispatch, getState }) => { aero.removeStore(action.payload); } + if (pageChangerActions.indexOf(action.type) >= 0) { + unselectShape(prevPage); + } + next(action); switch (action.type) {