From 3159eeceecc3b59abed33450b5c5e3d6ad19abe6 Mon Sep 17 00:00:00 2001 From: "irvingouj@Devolutions" Date: Tue, 25 Mar 2025 18:09:48 -0400 Subject: [PATCH] fix(web): fix firefox selection issue (#708) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: BenoƮt CORTIER --- .../src/iron-remote-gui.svelte | 7 +++ .../src/lib/login/login.svelte | 2 +- .../lib/remote-screen/remote-screen.svelte | 60 ++++++++++++------- 3 files changed, 47 insertions(+), 22 deletions(-) diff --git a/web-client/iron-remote-gui/src/iron-remote-gui.svelte b/web-client/iron-remote-gui/src/iron-remote-gui.svelte index af261776..5c833701 100644 --- a/web-client/iron-remote-gui/src/iron-remote-gui.svelte +++ b/web-client/iron-remote-gui/src/iron-remote-gui.svelte @@ -716,6 +716,9 @@ }} oncontextmenu={(event) => event.preventDefault()} onwheel={mouseWheel} + onselectstart={(event) => { + event.preventDefault(); + }} id="renderer" tabindex="0" > @@ -738,6 +741,10 @@ height: 100%; } + ::selection { + background-color: transparent; + } + .screen-wrapper.hidden { pointer-events: none !important; position: absolute !important; diff --git a/web-client/iron-svelte-client/src/lib/login/login.svelte b/web-client/iron-svelte-client/src/lib/login/login.svelte index 679fc0b6..de66873b 100644 --- a/web-client/iron-svelte-client/src/lib/login/login.svelte +++ b/web-client/iron-svelte-client/src/lib/login/login.svelte @@ -140,7 +140,7 @@ }); return of(null); }), - filter((result) => !!result), + filter((result) => result !== null && result !== undefined), // Explicitly checking for null/undefined ) .subscribe((start_info: NewSessionInfo | null) => { if (start_info != null && start_info.initial_desktop_size !== null) { diff --git a/web-client/iron-svelte-client/src/lib/remote-screen/remote-screen.svelte b/web-client/iron-svelte-client/src/lib/remote-screen/remote-screen.svelte index 3e31e2b6..4da223ef 100644 --- a/web-client/iron-svelte-client/src/lib/remote-screen/remote-screen.svelte +++ b/web-client/iron-svelte-client/src/lib/remote-screen/remote-screen.svelte @@ -6,6 +6,7 @@ let uiService: UserInteraction; let cursorOverrideActive = false; + let showDebugPanel = false; userInteractionService.subscribe((uis) => { if (uis != null) { @@ -60,27 +61,44 @@
-
- - - - - - - - +
+
+ + + + + + + + + +
+ + {#if showDebugPanel} +
+ debug-panel + + +

see if text selection works correctly

+
+ {/if}