mirror of
https://github.com/glfw/glfw.git
synced 2025-12-15 11:43:13 +00:00
wait-events X11 implementation
This commit is contained in:
parent
d1d118de3e
commit
e12aacb41a
@ -128,6 +128,8 @@ static void drainEmptyEvents(void)
|
||||
{
|
||||
char dummy[64];
|
||||
const ssize_t result = read(_glfw.x11.emptyEventPipe[0], dummy, sizeof(dummy));
|
||||
if (result > 0)
|
||||
_glfw.newEventsRcvd = GLFW_TRUE;
|
||||
if (result == -1 && errno != EINTR)
|
||||
break;
|
||||
}
|
||||
@ -2824,14 +2826,20 @@ void _glfwPollEventsX11(void)
|
||||
|
||||
void _glfwWaitEventsX11(void)
|
||||
{
|
||||
waitForAnyEvent(NULL);
|
||||
_glfwPollEventsX11();
|
||||
while (_glfw.newEventsRcvd == GLFW_FALSE)
|
||||
{
|
||||
waitForAnyEvent(NULL);
|
||||
_glfwPollEventsX11();
|
||||
}
|
||||
}
|
||||
|
||||
void _glfwWaitEventsTimeoutX11(double timeout)
|
||||
{
|
||||
waitForAnyEvent(&timeout);
|
||||
_glfwPollEventsX11();
|
||||
do
|
||||
{
|
||||
waitForAnyEvent(&timeout);
|
||||
_glfwPollEventsX11();
|
||||
} while (_glfw.newEventsRcvd == GLFW_FALSE && timeout > 0.0 );
|
||||
}
|
||||
|
||||
void _glfwPostEmptyEventX11(void)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user