Skip to content

Commit 45cace4

Browse files
feat: handle mousebutton on navigation (#521)
* feat: split upload/+page.svelte * Update +page.svelte * add
1 parent 55bbc42 commit 45cace4

File tree

2 files changed

+7
-19
lines changed

2 files changed

+7
-19
lines changed

src/frontend/src/routes/(needs_onboarding)/(navbar_and_footer)/reverse/[room_id]/+page.svelte

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
import Host from './host.svelte';
33
import Client from './client.svelte';
44
import { page } from '$app/state';
5-
import { browser } from '$app/environment';
65
import { isHost } from './utils';
76
87
let room_id = $derived(page.params.room_id ?? '');

src/frontend/src/routes/(needs_onboarding)/(navbar_and_footer)/upload/+page.svelte

Lines changed: 7 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
import { toast } from 'svelte-sonner';
1010
import { dev } from '$app/environment';
1111
import { markdown_to_html } from '$lib/markdown/markdown';
12-
import { onMount, onDestroy } from 'svelte';
1312
import { Button } from '$lib/components/ui/button';
1413
import { fly, fade } from 'svelte/transition';
1514
@@ -35,24 +34,12 @@
3534
let detailsMarkdown = $derived(configData.data?.site_description ?? '');
3635
3736
// Handle physical mouse back button (X1) to return from stage 2 to stage 1
38-
let _mouseBackHandler: ((e: MouseEvent) => void) | undefined;
39-
onMount(() => {
40-
_mouseBackHandler = (e: MouseEvent) => {
41-
if (e.button === 3 && stage === 2) {
42-
stage = 1;
43-
e.preventDefault();
44-
}
45-
};
46-
window.addEventListener('auxclick', _mouseBackHandler as EventListener);
47-
window.addEventListener('pointerdown', _mouseBackHandler as EventListener);
48-
});
49-
50-
onDestroy(() => {
51-
if (_mouseBackHandler) {
52-
window.removeEventListener('auxclick', _mouseBackHandler as EventListener);
53-
window.removeEventListener('pointerdown', _mouseBackHandler as EventListener);
37+
const handleMouseBack = (e: MouseEvent) => {
38+
if (e.button === 3 && stage === 2) {
39+
stage = 1;
40+
e.preventDefault();
5441
}
55-
});
42+
};
5643
5744
const handleWindowDragEnter = (e: DragEvent) => {
5845
e.preventDefault();
@@ -229,6 +216,8 @@
229216
ondragleave={handleWindowDragLeave}
230217
ondrop={handleWindowDrop}
231218
onpaste={handlePaste}
219+
onauxclick={handleMouseBack}
220+
onpointerdown={handleMouseBack}
232221
/>
233222

234223
{#snippet encryptionInfo()}

0 commit comments

Comments
 (0)