From 89b4fbd29854c6c4b5472d8d1417450b8f65bd5c Mon Sep 17 00:00:00 2001 From: largenumberhere <60594766+largenumberhere@users.noreply.github.com> Date: Thu, 16 Jul 2026 20:10:03 +1000 Subject: [PATCH] [rcore] fic position on mouse leave for emscripten. Issue raysan5#5945 followup (#5981) --- src/platforms/rcore_web_emscripten.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/platforms/rcore_web_emscripten.c b/src/platforms/rcore_web_emscripten.c index ff10fabb3..fa967057a 100644 --- a/src/platforms/rcore_web_emscripten.c +++ b/src/platforms/rcore_web_emscripten.c @@ -1507,8 +1507,16 @@ static EM_BOOL EmscriptenMouseCallback(int eventType, const EmscriptenMouseEvent { switch (eventType) { - case EMSCRIPTEN_EVENT_MOUSEENTER: CORE.Input.Mouse.cursorOnScreen = true; break; - case EMSCRIPTEN_EVENT_MOUSELEAVE: CORE.Input.Mouse.cursorOnScreen = false; break; + case EMSCRIPTEN_EVENT_MOUSEENTER: { + // NOTE: Mouse position updated by EmscriptenMouseMoveCallback(), + // EmscriptenPointerlockCallback(), and EmscriptenTouchCallback() + CORE.Input.Mouse.cursorOnScreen = true; + } break; + case EMSCRIPTEN_EVENT_MOUSELEAVE: + { + CORE.Input.Mouse.cursorOnScreen = false; + CORE.Input.Mouse.currentPosition = (Vector2){ 0 }; + } break; case EMSCRIPTEN_EVENT_MOUSEDOWN: { // NOTE: Emscripten and raylib buttons indices are not aligned