|
|
@ -426,6 +426,8 @@ static int gamepadStream[MAX_GAMEPADS] = { -1 };// Gamepad device file descripto |
|
|
|
static pthread_t gamepadThreadId; // Gamepad reading thread id |
|
|
|
static char gamepadName[64]; // Gamepad name holder |
|
|
|
#endif |
|
|
|
|
|
|
|
bool touchDetected = false; |
|
|
|
//----------------------------------------------------------------------------------- |
|
|
|
|
|
|
|
// Timming system variables |
|
|
@ -2427,12 +2429,11 @@ bool IsMouseButtonPressed(int button) |
|
|
|
if ((currentMouseState[button] != previousMouseState[button]) && (currentMouseState[button] == 1)) pressed = true; |
|
|
|
#endif |
|
|
|
|
|
|
|
/* |
|
|
|
|
|
|
|
#if defined(PLATFORM_WEB) |
|
|
|
Vector2 pos = GetTouchPosition(0); |
|
|
|
if ((pos.x > 0) && (pos.y > 0)) pressed = true; // There was a touch! |
|
|
|
if (IsTouchDetected()) pressed = true; // There was a touch! |
|
|
|
#endif |
|
|
|
*/ |
|
|
|
|
|
|
|
return pressed; |
|
|
|
} |
|
|
|
|
|
|
@ -2504,14 +2505,11 @@ Vector2 GetMousePosition(void) |
|
|
|
#else |
|
|
|
position = (Vector2){ (mousePosition.x + mouseOffset.x)*mouseScale.x, (mousePosition.y + mouseOffset.y)*mouseScale.y }; |
|
|
|
#endif |
|
|
|
/* |
|
|
|
#if defined(PLATFORM_WEB) |
|
|
|
Vector2 pos = GetTouchPosition(0); |
|
|
|
|
|
|
|
// Touch position has priority over mouse position |
|
|
|
if (p">(pos.x > 0) && (pos.y > 0)) position = pos; // There was a touch! |
|
|
|
#if defined(PLATFORM_WEB) |
|
|
|
if (IsTouchDetected()) position = GetTouchPosition(0); |
|
|
|
#endif |
|
|
|
*/ |
|
|
|
|
|
|
|
return position; |
|
|
|
} |
|
|
|
|
|
|
@ -2558,6 +2556,16 @@ int GetMouseWheelMove(void) |
|
|
|
#endif |
|
|
|
} |
|
|
|
|
|
|
|
// Detect if a touch has happened |
|
|
|
bool IsTouchDetected(void) |
|
|
|
{ |
|
|
|
#if defined(PLATFORM_ANDROID) || defined(PLATFORM_WEB) |
|
|
|
return touchDetected; |
|
|
|
#else // PLATFORM_DESKTOP, PLATFORM_RPI |
|
|
|
return false; |
|
|
|
#endif |
|
|
|
} |
|
|
|
|
|
|
|
// Returns touch position X for touch point 0 (relative to screen size) |
|
|
|
int GetTouchX(void) |
|
|
|
{ |
|
|
@ -3718,6 +3726,8 @@ static void PollInputEvents(void) |
|
|
|
|
|
|
|
previousMouseWheelY = currentMouseWheelY; |
|
|
|
currentMouseWheelY = 0; |
|
|
|
|
|
|
|
touchDetected = false; |
|
|
|
#endif |
|
|
|
|
|
|
|
#if defined(PLATFORM_DESKTOP) |
|
|
@ -4362,6 +4372,7 @@ static EM_BOOL EmscriptenMouseCallback(int eventType, const EmscriptenMouseEvent |
|
|
|
// Register touch input events |
|
|
|
static EM_BOOL EmscriptenTouchCallback(int eventType, const EmscriptenTouchEvent *touchEvent, void *userData) |
|
|
|
{ |
|
|
|
touchDetected = true; |
|
|
|
/* |
|
|
|
for (int i = 0; i < touchEvent->numTouches; i++) |
|
|
|
{ |
|
|
|