Skip to content
Snippets Groups Projects
Commit b7612887 authored by Chris Beer's avatar Chris Beer
Browse files

Allow multiple companion windows in companion areas, except for the left one

parent f395c408
Branches
Tags
No related merge requests found
......@@ -26,6 +26,7 @@ const styles = theme => ({
},
horizontal: {
width: '100%',
flexDirection: 'column',
},
toggle: {
position: 'absolute',
......
......@@ -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];
if (position === 'left') {
companionWindowIds
.filter(id => companionWindows[id].position === position)
.map(id => dispatch(removeCompanionWindow(id)));
if (position === 'left') {
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
let existingCompanionWindowIds;
if (position === 'left') {
existingCompanionWindowIds = companionWindowIds
.filter(id => (companionWindows[id].position !== position));
} else {
existingCompanionWindowIds = companionWindowIds;
}
dispatch(updateWindow(windowId, {
companionWindowIds: existingCompanionWindowIds.concat([companionWindowId]),
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment