diff --git a/src/containers/CompanionArea.js b/src/containers/CompanionArea.js index 22095d65e58bec600b6d08198841eb469fe08022..90c4c6b81ea1f4fcf1c77cde6f44617199341954 100644 --- a/src/containers/CompanionArea.js +++ b/src/containers/CompanionArea.js @@ -26,6 +26,7 @@ const styles = theme => ({ }, horizontal: { width: '100%', + flexDirection: 'column', }, toggle: { position: 'absolute', diff --git a/src/state/actions/companionWindow.js b/src/state/actions/companionWindow.js index e01867b888c42e36559aa6f95814942af7112c2e..81ea10c5f162c36547a46dac7c9e5781e1c210cb 100644 --- a/src/state/actions/companionWindow.js +++ b/src/state/actions/companionWindow.js @@ -21,7 +21,7 @@ export function addCompanionWindow(payload, defaults = defaultProps) { /** */ export function updateCompanionWindow(windowId, id, payload) { return (dispatch, getState) => { - if (payload.position) { + if (payload.position === 'left') { const { windows, companionWindows } = getState(); const { companionWindowIds } = windows[windowId]; @@ -66,11 +66,11 @@ export function popOutCompanionWindow(windowId, panelType, position) { const { windows, companionWindows } = getState(); const { companionWindowIds } = windows[windowId]; - companionWindowIds - .filter(id => companionWindows[id].position === position) - .map(id => dispatch(removeCompanionWindow(id))); - if (position === 'left') { + companionWindowIds + .filter(id => companionWindows[id].position === position) + .map(id => dispatch(removeCompanionWindow(id))); + dispatch(setWindowSideBarPanel(windowId, panelType)); dispatch(setCompanionAreaOpen(windowId, true)); @@ -79,8 +79,14 @@ export function popOutCompanionWindow(windowId, panelType, position) { const action = dispatch(addCompanionWindow({ content: panelType, position })); const companionWindowId = action.id; - const existingCompanionWindowIds = companionWindowIds - .filter(id => (companionWindows[id].position !== position)); + let existingCompanionWindowIds; + + if (position === 'left') { + existingCompanionWindowIds = companionWindowIds + .filter(id => (companionWindows[id].position !== position)); + } else { + existingCompanionWindowIds = companionWindowIds; + } dispatch(updateWindow(windowId, { companionWindowIds: existingCompanionWindowIds.concat([companionWindowId]),