[web] Fix Emscripten's Closure compiler error: undeclared canvas variable (#5507)

* Fix Emscripten Closure compiler error: undeclared canvas variable

* Fix hardcoded canvas IDs in web targets
This commit is contained in:
Viktor Demčák
2026-01-24 21:21:43 +01:00
committed by GitHub
parent a33ae4a8ef
commit 70a63f7c62
2 changed files with 8 additions and 6 deletions

View File

@ -316,15 +316,16 @@ void ToggleBorderlessWindowed(void)
// 2. The style unset handles the possibility of a width="value%" like on the default shell.html file
EM_ASM
(
const canvasId = UTF8ToString($0);
setTimeout(function()
{
Module.requestFullscreen(false, true);
setTimeout(function()
{
canvas.style.width="unset";
document.querySelector(canvasId).style.width="unset";
}, 100);
}, 100);
);
, platform.canvasId);
FLAG_SET(CORE.Window.flags, FLAG_BORDERLESS_WINDOWED_MODE);
}
}
@ -1238,9 +1239,9 @@ int InitPlatform(void)
// Avoid creating a WebGL canvas, avoid calling glfwCreateWindow()
emscripten_set_canvas_element_size(platform.canvasId, CORE.Window.screen.width, CORE.Window.screen.height);
EM_ASM({
const canvas = document.getElementById("canvas");
const canvas = document.querySelector(UTF8ToString($0));
Module.canvas = canvas;
});
}, platform.canvasId);
// Load memory framebuffer with desired screen size
// NOTE: Despite using a software framebuffer for blitting, GLFW still creates a WebGL canvas,

View File

@ -280,15 +280,16 @@ void ToggleBorderlessWindowed(void)
// 2. The style unset handles the possibility of a width="value%" like on the default shell.html file
EM_ASM
(
const canvasId = UTF8ToString($0);
setTimeout(function()
{
Module.requestFullscreen(false, true);
setTimeout(function()
{
canvas.style.width="unset";
document.querySelector(canvasId).style.width="unset";
}, 100);
}, 100);
);
, platform.canvasId);
FLAG_SET(CORE.Window.flags, FLAG_BORDERLESS_WINDOWED_MODE);
}
}