Merge pull request #14042 from sonninnos/winraw-pointer

(WINRAW) Fix pointer device position
This commit is contained in:
LibretroAdmin 2022-06-16 12:45:05 +01:00 committed by GitHub
commit e759f81149
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -407,11 +407,16 @@ static void winraw_update_mouse_state(winraw_input_t *wr,
}
else if (state->lLastX || state->lLastY)
{
/* Menu requires GetCursorPos() for accurate
/* Menu and pointer require GetCursorPos() for
* positioning, but using that always will
* break multiple mice positions */
bool getcursorpos = (mouse->device == RETRO_DEVICE_POINTER) ? true : false;
#ifdef HAVE_MENU
if (menu_state_get_ptr()->alive)
getcursorpos = true;
#endif
if (getcursorpos)
{
if (!GetCursorPos(&crs_pos))
RARCH_DBG("[WinRaw]: GetCursorPos failed with error %lu.\n", GetLastError());
@ -419,7 +424,6 @@ static void winraw_update_mouse_state(winraw_input_t *wr,
RARCH_DBG("[WinRaw]: ScreenToClient failed with error %lu.\n", GetLastError());
}
else
#endif
{
/* Handle different sensitivity for lightguns */
if (mouse->device == RETRO_DEVICE_LIGHTGUN)