From e926fb5cd5653be5df8c00059fa1296c1f8a7900 Mon Sep 17 00:00:00 2001 From: Maeght Loan <37497007+loan-mgt@users.noreply.github.com> Date: Thu, 6 Mar 2025 21:41:56 +0000 Subject: [PATCH] handle edge case MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit no accessibilité --- src/client/InputHandler.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/client/InputHandler.ts b/src/client/InputHandler.ts index 281b751a7..da42f3a77 100644 --- a/src/client/InputHandler.ts +++ b/src/client/InputHandler.ts @@ -200,6 +200,8 @@ export class InputHandler { "Digit1", "Digit2", "KeyC", + "ControlLeft", + "ControlRight", ].includes(e.code) ) { this.activeKeys.add(e.code); @@ -250,6 +252,8 @@ export class InputHandler { "Digit1", "Digit2", "KeyC", + "ControlLeft", + "ControlRight", ].includes(e.code) ) { this.activeKeys.delete(e.code); @@ -310,7 +314,10 @@ export class InputHandler { private onScroll(event: WheelEvent) { if (!event.shiftKey) { - const ratio = event.ctrlKey ? 10 : 1; // Compensate pinch-zoom low sensitivity + const realCtrl = + this.activeKeys.has("ControlLeft") || + this.activeKeys.has("ControlRight"); + const ratio = event.ctrlKey && !realCtrl ? 10 : 1; // Compensate pinch-zoom low sensitivity this.eventBus.emit(new ZoomEvent(event.x, event.y, event.deltaY * ratio)); } }