Skip to content

Commit ac3eee2

Browse files
authored
fix(code): suppress space switcher during tour and on cmd+shift (#1879)
1 parent f9f78da commit ac3eee2

2 files changed

Lines changed: 14 additions & 0 deletions

File tree

apps/code/src/renderer/components/SpaceSwitcher.tsx

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -306,6 +306,10 @@ export function SpaceSwitcher({
306306
useEffect(() => {
307307
const handleKeyDown = (e: KeyboardEvent) => {
308308
if (e.key === MOD_KEY && !e.repeat) {
309+
// Suppress while a tour is active or Shift is held (screenshot shortcut).
310+
if (e.shiftKey || document.body.classList.contains("tour-active")) {
311+
return;
312+
}
309313
metaHeldRef.current = true;
310314
otherKeyRef.current = false;
311315
clearTimeout(hideTimerRef.current);
@@ -320,6 +324,10 @@ export function SpaceSwitcher({
320324
// Minimap only appears from a pure Cmd hold with no other keys.
321325
otherKeyRef.current = true;
322326
clearTimeout(showTimerRef.current);
327+
// Shift during hold = screenshot intent. Hide if already shown.
328+
if (e.key === "Shift") {
329+
hide();
330+
}
323331
}
324332
};
325333

apps/code/src/renderer/features/tour/components/TourOverlay.tsx

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,12 @@ export function TourOverlay() {
4646
const advance = useTourStore((s) => s.advance);
4747
const dismiss = useTourStore((s) => s.dismiss);
4848

49+
useEffect(() => {
50+
if (!activeTourId) return;
51+
document.body.classList.add("tour-active");
52+
return () => document.body.classList.remove("tour-active");
53+
}, [activeTourId]);
54+
4955
const tour = activeTourId ? TOUR_REGISTRY[activeTourId] : null;
5056
const step = tour?.steps[activeStepIndex] ?? null;
5157

0 commit comments

Comments
 (0)