diff -r c65108ddbeb0 src/video/winrt/SDL_winrtpointerinput.cpp --- a/src/video/winrt/SDL_winrtpointerinput.cpp Fri Nov 07 10:02:45 2014 +0100 +++ b/src/video/winrt/SDL_winrtpointerinput.cpp Sun Nov 09 14:27:46 2014 +0000 @@ -226,15 +226,15 @@ Uint8 button = WINRT_GetSDLButtonForPointerPoint(pointerPoint); if ( ! WINRT_IsTouchEvent(pointerPoint)) { - SDL_SendMouseButton(window, 0, SDL_PRESSED, button); + SDL_SendMouseButton(window, (SDL_FingerID)pointerPoint->PointerId, SDL_PRESSED, button); } else { Windows::Foundation::Point normalizedPoint = WINRT_TransformCursorPosition(window, pointerPoint->Position, NormalizeZeroToOne); Windows::Foundation::Point windowPoint = WINRT_TransformCursorPosition(window, pointerPoint->Position, TransformToSDLWindowSize); if (!WINRT_LeftFingerDown) { if (button) { - SDL_SendMouseMotion(window, 0, 0, (int)windowPoint.X, (int)windowPoint.Y); - SDL_SendMouseButton(window, 0, SDL_PRESSED, button); + SDL_SendMouseMotion(window, SDL_TOUCH_MOUSEID, 0, (int)windowPoint.X, (int)windowPoint.Y); + SDL_SendMouseButton(window, SDL_TOUCH_MOUSEID, SDL_PRESSED, button); } WINRT_LeftFingerDown = pointerPoint->PointerId;