Skip to content

Commit 762482d

Browse files
authored
fix(layout): silence spurious error (#2396)
1 parent 4c79f43 commit 762482d

1 file changed

Lines changed: 18 additions & 17 deletions

File tree

src/routes/+layout.svelte

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
import "../styles/main.css";
33
44
import { onDestroy, onMount } from "svelte";
5+
import { browser } from "$app/environment";
56
import { goto } from "$app/navigation";
67
import { base } from "$app/paths";
78
import { page } from "$app/state";
@@ -101,8 +102,25 @@
101102
settings.set({ welcomeModalSeen: true });
102103
}
103104
105+
// Global keyboard shortcut: New Chat (Ctrl/Cmd + Shift + O)
106+
const onKeydown = (e: KeyboardEvent) => {
107+
// Ignore when a modal has focus (app is inert)
108+
const appEl = document.getElementById("app");
109+
if (appEl?.hasAttribute("inert")) return;
110+
111+
const oPressed = e.key?.toLowerCase() === "o";
112+
const metaOrCtrl = e.metaKey || e.ctrlKey;
113+
if (oPressed && e.shiftKey && metaOrCtrl) {
114+
e.preventDefault();
115+
isAborted.set(true);
116+
if (requireAuthUser()) return;
117+
goto(`${base}/`, { invalidateAll: true });
118+
}
119+
};
120+
104121
onDestroy(() => {
105122
clearTimeout(errorToastTimeout);
123+
if (browser) window.removeEventListener("keydown", onKeydown, { capture: true });
106124
});
107125
108126
$effect(() => {
@@ -161,24 +179,7 @@
161179
});
162180
}
163181
164-
// Global keyboard shortcut: New Chat (Ctrl/Cmd + Shift + O)
165-
const onKeydown = (e: KeyboardEvent) => {
166-
// Ignore when a modal has focus (app is inert)
167-
const appEl = document.getElementById("app");
168-
if (appEl?.hasAttribute("inert")) return;
169-
170-
const oPressed = e.key?.toLowerCase() === "o";
171-
const metaOrCtrl = e.metaKey || e.ctrlKey;
172-
if (oPressed && e.shiftKey && metaOrCtrl) {
173-
e.preventDefault();
174-
isAborted.set(true);
175-
if (requireAuthUser()) return;
176-
goto(`${base}/`, { invalidateAll: true });
177-
}
178-
};
179-
180182
window.addEventListener("keydown", onKeydown, { capture: true });
181-
onDestroy(() => window.removeEventListener("keydown", onKeydown, { capture: true }));
182183
});
183184
184185
let mobileNavTitle = $derived(

0 commit comments

Comments
 (0)