From b33e3a435679dc203bb67f6df0b68450ea04f2e7 Mon Sep 17 00:00:00 2001 From: Alessandro Pignotti Date: Wed, 23 Oct 2024 10:56:38 +0200 Subject: [PATCH] Avoid reacting to spurious resize events They are caused by soft-keyboard spawning --- src/lib/WebVM.svelte | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/lib/WebVM.svelte b/src/lib/WebVM.svelte index cd012dc..caa0ae5 100644 --- a/src/lib/WebVM.svelte +++ b/src/lib/WebVM.svelte @@ -147,8 +147,15 @@ mult = Math.max(mult, minHeight / displayHeight); cx.setKmsCanvas(display, displayWidth * mult, displayHeight * mult); } + var curInnerWidth = 0; + var curInnerHeight = 0; function handleResize() { + // Avoid spurious resize events caused by the soft keyboard + if(curInnerWidth == window.innerWidth && curInnerHeight == window.innerHeight) + return; + curInnerWidth = window.innerWidth; + curInnerHeight = window.innerHeight; term.options.fontSize = computeXTermFontSize(); fitAddon.fit(); const display = document.getElementById("display"); @@ -181,6 +188,8 @@ consoleDiv.addEventListener("dragenter", preventDefaults, false); consoleDiv.addEventListener("dragleave", preventDefaults, false); consoleDiv.addEventListener("drop", preventDefaults, false); + curInnerWidth = window.innerWidth; + curInnerHeight = window.innerHeight; if(configObj.printIntro) printMessage(introMessage); try