diff --git a/example/imgui_impl.js b/example/imgui_impl.js index 53f9d6f..1cb8507 100644 --- a/example/imgui_impl.js +++ b/example/imgui_impl.js @@ -86,16 +86,18 @@ } function canvas_on_pointermove(event) { const io = ImGui.GetIO(); - io.MousePos.x = event.offsetX; - io.MousePos.y = event.offsetY; + const devicePixelRatio = window.devicePixelRatio || 1; + io.MousePos.x = event.offsetX * devicePixelRatio; + io.MousePos.y = event.offsetY * devicePixelRatio; if (io.WantCaptureMouse) { event.preventDefault(); } } function canvas_on_pointerdown(event) { const io = ImGui.GetIO(); - io.MousePos.x = event.offsetX; - io.MousePos.y = event.offsetY; + const devicePixelRatio = window.devicePixelRatio || 1; + io.MousePos.x = event.offsetX * devicePixelRatio; + io.MousePos.y = event.offsetY * devicePixelRatio; io.MouseDown[mouse_button_map[event.button]] = true; // if (io.WantCaptureMouse) { // event.preventDefault(); diff --git a/example/imgui_impl.js b/example/imgui_impl.js index 53f9d6f..1cb8507 100644 --- a/example/imgui_impl.js +++ b/example/imgui_impl.js @@ -86,16 +86,18 @@ } function canvas_on_pointermove(event) { const io = ImGui.GetIO(); - io.MousePos.x = event.offsetX; - io.MousePos.y = event.offsetY; + const devicePixelRatio = window.devicePixelRatio || 1; + io.MousePos.x = event.offsetX * devicePixelRatio; + io.MousePos.y = event.offsetY * devicePixelRatio; if (io.WantCaptureMouse) { event.preventDefault(); } } function canvas_on_pointerdown(event) { const io = ImGui.GetIO(); - io.MousePos.x = event.offsetX; - io.MousePos.y = event.offsetY; + const devicePixelRatio = window.devicePixelRatio || 1; + io.MousePos.x = event.offsetX * devicePixelRatio; + io.MousePos.y = event.offsetY * devicePixelRatio; io.MouseDown[mouse_button_map[event.button]] = true; // if (io.WantCaptureMouse) { // event.preventDefault(); diff --git a/example/imgui_impl.ts b/example/imgui_impl.ts index ec2797d..9acad3a 100644 --- a/example/imgui_impl.ts +++ b/example/imgui_impl.ts @@ -118,8 +118,9 @@ function canvas_on_pointermove(event: PointerEvent): void { const io = ImGui.GetIO(); - io.MousePos.x = event.offsetX; - io.MousePos.y = event.offsetY; + const devicePixelRatio: number = window.devicePixelRatio || 1; + io.MousePos.x = event.offsetX * devicePixelRatio; + io.MousePos.y = event.offsetY * devicePixelRatio; if (io.WantCaptureMouse) { event.preventDefault(); } @@ -136,8 +137,9 @@ function canvas_on_pointerdown(event: PointerEvent): void { const io = ImGui.GetIO(); - io.MousePos.x = event.offsetX; - io.MousePos.y = event.offsetY; + const devicePixelRatio: number = window.devicePixelRatio || 1; + io.MousePos.x = event.offsetX * devicePixelRatio; + io.MousePos.y = event.offsetY * devicePixelRatio; io.MouseDown[mouse_button_map[event.button]] = true; // if (io.WantCaptureMouse) { // event.preventDefault();