diff --git a/src/conio/win32cio.c b/src/conio/win32cio.c index 69fc70dd3269c337cc75f7580d8858e52f201abf..73a1a4f03fff1e12d92a883071373f63f469c896 100644 --- a/src/conio/win32cio.c +++ b/src/conio/win32cio.c @@ -110,7 +110,7 @@ int win32_kbhit(void) if(input.Event.MouseEvent.dwEventFlags==MOUSE_MOVED) { ciomouse_gotevent(CIOLIB_MOUSE_MOVE,input.Event.MouseEvent.dwMousePosition.X+1,input.Event.MouseEvent.dwMousePosition.Y+1); } - if(!input.Event.MouseEvent.dwEventFlags) { + if(last_state != input.Event.MouseEvent.dwButtonState) { switch(input.Event.MouseEvent.dwButtonState ^ last_state) { case FROM_LEFT_1ST_BUTTON_PRESSED: if(input.Event.MouseEvent.dwButtonState & FROM_LEFT_1ST_BUTTON_PRESSED) @@ -202,7 +202,7 @@ int win32_getch(void) if(input.Event.MouseEvent.dwEventFlags==MOUSE_MOVED) { ciomouse_gotevent(CIOLIB_MOUSE_MOVE,input.Event.MouseEvent.dwMousePosition.X+1,input.Event.MouseEvent.dwMousePosition.Y+1); } - if(!input.Event.MouseEvent.dwEventFlags) { + if(last_state != input.Event.MouseEvent.dwButtonState) { switch(input.Event.MouseEvent.dwButtonState ^ last_state) { case FROM_LEFT_1ST_BUTTON_PRESSED: if(input.Event.MouseEvent.dwButtonState & FROM_LEFT_1ST_BUTTON_PRESSED)