process multiple queued events up to a maximum time before redrawing screen
This commit is contained in:
parent
49c34907f5
commit
b100262a15
@ -11,6 +11,10 @@
|
||||
#define INITIAL_HEIGHT 800
|
||||
#define FONT_SIZE 16
|
||||
|
||||
/* Process multiple queued events for up to this long before stopping to
|
||||
* redraw the screen. */
|
||||
#define MAX_EVENT_PROCESS_TIME 50000
|
||||
|
||||
/**
|
||||
* Initialize OpenGL.
|
||||
*
|
||||
@ -145,7 +149,13 @@ void Window::run_event_loop()
|
||||
redraw();
|
||||
}
|
||||
Jtk_WaitEvent(&event);
|
||||
uint64_t event_time = Jtk_UsTime();
|
||||
handle_event(event);
|
||||
while (Jtk_CheckEvent(&event) &&
|
||||
((Jtk_UsTime() - event_time) < MAX_EVENT_PROCESS_TIME))
|
||||
{
|
||||
handle_event(event);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user