Skip to content

Commit 9290a71

Browse files
Copilotmikebarkmin
andcommitted
Panel opens on single click and settings closes other panels
Co-authored-by: mikebarkmin <2592379+mikebarkmin@users.noreply.github.com>
1 parent 6973f5d commit 9290a71

2 files changed

Lines changed: 21 additions & 6 deletions

File tree

packages/learningmap/src/EditorCanvas.tsx

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ export const EditorCanvas = memo(({ defaultLanguage = "en" }: EditorCanvasProps)
4646
const setSelectedEdge = useEditorStore(state => state.setSelectedEdge);
4747
const setDrawerOpen = useEditorStore(state => state.setDrawerOpen);
4848
const setEdgeDrawerOpen = useEditorStore(state => state.setEdgeDrawerOpen);
49+
const setSettingsDrawerOpen = useEditorStore(state => state.setSettingsDrawerOpen);
4950
const setHelpOpen = useEditorStore(state => state.setHelpOpen);
5051
const setLastMousePosition = useEditorStore(state => state.setLastMousePosition);
5152

@@ -79,14 +80,16 @@ export const EditorCanvas = memo(({ defaultLanguage = "en" }: EditorCanvasProps)
7980
setDrawerOpen(true);
8081
setSelectedEdge(null);
8182
setEdgeDrawerOpen(false);
82-
}, [setSelectedNodeId, setDrawerOpen, setSelectedEdge, setEdgeDrawerOpen]);
83+
setSettingsDrawerOpen(false);
84+
}, [setSelectedNodeId, setDrawerOpen, setSelectedEdge, setEdgeDrawerOpen, setSettingsDrawerOpen]);
8385

8486
const handleEdgeClick = useCallback((_: any, edge: Edge) => {
8587
setSelectedEdge(edge);
8688
setEdgeDrawerOpen(true);
8789
setSelectedNodeId(null);
8890
setDrawerOpen(false);
89-
}, [setSelectedEdge, setEdgeDrawerOpen, setSelectedNodeId, setDrawerOpen]);
91+
setSettingsDrawerOpen(false);
92+
}, [setSelectedEdge, setEdgeDrawerOpen, setSelectedNodeId, setDrawerOpen, setSettingsDrawerOpen]);
9093

9194
const handleSelectionChange: OnSelectionChangeFunc = useCallback(
9295
({ nodes: selectedNodes }) => {
@@ -114,7 +117,8 @@ export const EditorCanvas = memo(({ defaultLanguage = "en" }: EditorCanvasProps)
114117
setSelectedNodeId(null);
115118
setEdgeDrawerOpen(false);
116119
setSelectedEdge(null);
117-
}, [setDrawerOpen, setSelectedNodeId, setEdgeDrawerOpen, setSelectedEdge]);
120+
setSettingsDrawerOpen(false);
121+
}, [setDrawerOpen, setSelectedNodeId, setEdgeDrawerOpen, setSelectedEdge, setSettingsDrawerOpen]);
118122

119123
const defaultEdgeOptions = {
120124
animated: false,
@@ -138,8 +142,8 @@ export const EditorCanvas = memo(({ defaultLanguage = "en" }: EditorCanvasProps)
138142
nodes={nodes}
139143
edges={edges}
140144
onEdgesChange={onEdgesChange}
141-
onNodeDoubleClick={handleNodeClick}
142-
onEdgeDoubleClick={handleEdgeClick}
145+
onNodeClick={handleNodeClick}
146+
onEdgeClick={handleEdgeClick}
143147
onNodesChange={onNodesChange}
144148
onConnect={onConnect}
145149
onSelectionChange={handleSelectionChange}

packages/learningmap/src/EditorToolbar.tsx

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,10 @@ export const EditorToolbar: React.FC<EditorToolbarProps> = ({
3636
const setShowUnlockAfter = useEditorStore(state => state.setShowUnlockAfter);
3737
const addNode = useEditorStore(state => state.addNode);
3838
const setSettingsDrawerOpen = useEditorStore(state => state.setSettingsDrawerOpen);
39+
const setDrawerOpen = useEditorStore(state => state.setDrawerOpen);
40+
const setEdgeDrawerOpen = useEditorStore(state => state.setEdgeDrawerOpen);
41+
const setSelectedNodeId = useEditorStore(state => state.setSelectedNodeId);
42+
const setSelectedEdge = useEditorStore(state => state.setSelectedEdge);
3943
const reset = useEditorStore(state => state.reset);
4044

4145
const [_, postToJsonStore] = useJsonStore();
@@ -66,7 +70,14 @@ export const EditorToolbar: React.FC<EditorToolbarProps> = ({
6670
addNode(newNode);
6771
};
6872

69-
const onOpenSettingsDrawer = () => setSettingsDrawerOpen(true);
73+
const onOpenSettingsDrawer = () => {
74+
setSettingsDrawerOpen(true);
75+
// Close other panels
76+
setDrawerOpen(false);
77+
setEdgeDrawerOpen(false);
78+
setSelectedNodeId(null);
79+
setSelectedEdge(null);
80+
};
7081

7182
const onReset = () => {
7283
if (confirm(t.resetMapWarning)) {

0 commit comments

Comments
 (0)