diff options
Diffstat (limited to 'code/linux_handmade.cpp')
-rw-r--r-- | code/linux_handmade.cpp | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/code/linux_handmade.cpp b/code/linux_handmade.cpp index 3d6895f..fce276f 100644 --- a/code/linux_handmade.cpp +++ b/code/linux_handmade.cpp @@ -955,9 +955,18 @@ int main(int ArgC, char *Args[]) { NewInput->MouseY = MouseY; NewInput->MouseX = MouseX; - NewInput->MouseButtons[0].EndedDown = ((MouseMask & Button1Mask) > 0); - NewInput->MouseButtons[1].EndedDown = ((MouseMask & Button2Mask) > 0); - NewInput->MouseButtons[2].EndedDown = ((MouseMask & Button3Mask) > 0); + + for(u32 ButtonIndex = 0; + ButtonIndex < PlatformMouseButton_Count; + ButtonIndex++) + { + NewInput->MouseButtons[ButtonIndex].EndedDown = OldInput->MouseButtons[ButtonIndex].EndedDown; + NewInput->MouseButtons[ButtonIndex].HalfTransitionCount = 0; + } + + LinuxProcessKeyPress(&NewInput->MouseButtons[PlatformMouseButton_Left], (MouseMask & Button1Mask)); + LinuxProcessKeyPress(&NewInput->MouseButtons[PlatformMouseButton_Middle], (MouseMask & Button2Mask)); + LinuxProcessKeyPress(&NewInput->MouseButtons[PlatformMouseButton_Right], (MouseMask & Button3Mask)); } } |