XQuartz: Use the master device in DarwinSendDDXEvent to avoid duplicate events.
(cherry picked from commit 6fa62192af937aa9656f64b516050bc099231c7a)
This commit is contained in:
parent
795de791cf
commit
09b024db63
|
@ -571,6 +571,7 @@ void DarwinSendDDXEvent(int type, int argc, ...) {
|
||||||
INT32 *argv;
|
INT32 *argv;
|
||||||
int i, max_args;
|
int i, max_args;
|
||||||
va_list args;
|
va_list args;
|
||||||
|
DeviceIntPtr pDev;
|
||||||
|
|
||||||
memset(&xe, 0, sizeof(xe));
|
memset(&xe, 0, sizeof(xe));
|
||||||
xe.u.u.type = type;
|
xe.u.u.type = type;
|
||||||
|
@ -586,8 +587,9 @@ void DarwinSendDDXEvent(int type, int argc, ...) {
|
||||||
va_end (args);
|
va_end (args);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pDev = (!darwinPointer->isMaster && darwinPointer->u.master) ? darwinPointer->u.master : darwinPointer;
|
||||||
darwinEvents_lock(); {
|
darwinEvents_lock(); {
|
||||||
mieqEnqueue(darwinPointer, &xe);
|
mieqEnqueue(pDev, &xe);
|
||||||
DarwinPokeEQ();
|
DarwinPokeEQ();
|
||||||
} darwinEvents_unlock();
|
} darwinEvents_unlock();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue