Avoid reacting to spurious resize events

They are caused by soft-keyboard spawning
This commit is contained in:
Alessandro Pignotti 2024-10-23 10:56:38 +02:00
parent 004ea4f264
commit b33e3a4356

View file

@ -147,8 +147,15 @@
mult = Math.max(mult, minHeight / displayHeight); mult = Math.max(mult, minHeight / displayHeight);
cx.setKmsCanvas(display, displayWidth * mult, displayHeight * mult); cx.setKmsCanvas(display, displayWidth * mult, displayHeight * mult);
} }
var curInnerWidth = 0;
var curInnerHeight = 0;
function handleResize() 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(); term.options.fontSize = computeXTermFontSize();
fitAddon.fit(); fitAddon.fit();
const display = document.getElementById("display"); const display = document.getElementById("display");
@ -181,6 +188,8 @@
consoleDiv.addEventListener("dragenter", preventDefaults, false); consoleDiv.addEventListener("dragenter", preventDefaults, false);
consoleDiv.addEventListener("dragleave", preventDefaults, false); consoleDiv.addEventListener("dragleave", preventDefaults, false);
consoleDiv.addEventListener("drop", preventDefaults, false); consoleDiv.addEventListener("drop", preventDefaults, false);
curInnerWidth = window.innerWidth;
curInnerHeight = window.innerHeight;
if(configObj.printIntro) if(configObj.printIntro)
printMessage(introMessage); printMessage(introMessage);
try try