Prechádzať zdrojové kódy

Make raylib/raygui work better on touchscreen (#3728)

* Fix that touch doesn't work for click/drag/raygui

* Add comments

* comments update
Hongyu Ouyang 1 rok pred
rodič
commit
0a8165c0ac
1 zmenil súbory, kde vykonal 7 pridanie a 0 odobranie
  1. 7 0
      src/platforms/rcore_web.c

+ 7 - 0
src/platforms/rcore_web.c

@@ -1646,6 +1646,13 @@ static EM_BOOL EmscriptenTouchCallback(int eventType, const EmscriptenTouchEvent
         else if (eventType == EMSCRIPTEN_EVENT_TOUCHEND) CORE.Input.Touch.currentTouchState[i] = 0;
     }
 
+    // Update mouse position if we detect a single touch.
+    if (CORE.Input.Touch.pointCount == 1)
+    {
+        CORE.Input.Mouse.currentPosition.x = CORE.Input.Touch.position[0].x;
+        CORE.Input.Mouse.currentPosition.y = CORE.Input.Touch.position[0].y;
+    }
+
 #if defined(SUPPORT_GESTURES_SYSTEM)
     GestureEvent gestureEvent = {0};