Combine mouse movement events in event queue

This commit is contained in:
smallmodel 2024-10-25 22:08:24 +02:00
parent e7499cca04
commit 9bd25e9734
No known key found for this signature in database
GPG key ID: 9F2D623CEDF08512

View file

@ -958,6 +958,19 @@ void Com_QueueEvent( int time, sysEventType_t type, int value, int value2, size_
{
sysEvent_t *ev;
// combine mouse movement with previous mouse event
if ( type == SE_MOUSE && eventHead != eventTail )
{
ev = &eventQueue[ ( eventHead + MAX_QUEUED_EVENTS - 1 ) & MASK_QUEUED_EVENTS ];
if ( ev->evType == SE_MOUSE )
{
ev->evValue += value;
ev->evValue2 += value2;
return;
}
}
ev = &eventQueue[ eventHead & MASK_QUEUED_EVENTS ];
if ( eventHead - eventTail >= MAX_QUEUED_EVENTS )