diff --git a/src/renderer/src/components/terminal-pane/terminal-render-desync-trigger.ts b/src/renderer/src/components/terminal-pane/terminal-render-desync-trigger.ts index e65b19030e7..fa872efde43 100644 --- a/src/renderer/src/components/terminal-pane/terminal-render-desync-trigger.ts +++ b/src/renderer/src/components/terminal-pane/terminal-render-desync-trigger.ts @@ -118,3 +118,12 @@ function removeClickListener(): void { clickListener = null } } + +if (import.meta !== undefined && import.meta.hot) { + // Vite can replace this module without a full renderer reload. Remove the + // opt-in gesture hook so dev sessions do not retain stale pane closures. + import.meta.hot.dispose(() => { + removeClickListener() + stopRenderDesyncSampleBurst() + }) +}