unmount when not showing

This commit is contained in:
Ryan Di 2025-04-30 19:07:44 +10:00
parent 4630001dee
commit d890ed090c

View file

@ -1589,6 +1589,9 @@ class App extends React.Component<AppProps, AppState> {
const firstSelectedElement = selectedElements[0]; const firstSelectedElement = selectedElements[0];
const showShapeSwitchPanel =
editorJotaiStore.get(shapeSwitchAtom)?.type === "panel";
return ( return (
<div <div
className={clsx("excalidraw excalidraw-container", { className={clsx("excalidraw excalidraw-container", {
@ -1863,7 +1866,7 @@ class App extends React.Component<AppProps, AppState> {
/> />
)} )}
{this.renderFrameNames()} {this.renderFrameNames()}
<ShapeSwitch app={this} /> {showShapeSwitchPanel && <ShapeSwitch app={this} />}
</ExcalidrawActionManagerContext.Provider> </ExcalidrawActionManagerContext.Provider>
{this.renderEmbeddables()} {this.renderEmbeddables()}
</ExcalidrawElementsContext.Provider> </ExcalidrawElementsContext.Provider>
@ -4194,6 +4197,7 @@ class App extends React.Component<AppProps, AppState> {
editorJotaiStore.set(shapeSwitchAtom, { editorJotaiStore.set(shapeSwitchAtom, {
type: "panel", type: "panel",
}); });
this.triggerRender();
} }
} }