This will be called rapidly in the UI thread at a rate appropriate
for a toolkit main loop. There are no precise timing guarantees, but
the host should attempt to call idle() at a high enough rate for smooth
animation, at least 30Hz.
@return non-zero if the UI has been closed, in which case the host
should stop calling idle(), and can either completely destroy the UI, or
re-show it and resume calling idle().
Run a single iteration of the UI's idle loop.
This will be called rapidly in the UI thread at a rate appropriate for a toolkit main loop. There are no precise timing guarantees, but the host should attempt to call idle() at a high enough rate for smooth animation, at least 30Hz.
@return non-zero if the UI has been closed, in which case the host should stop calling idle(), and can either completely destroy the UI, or re-show it and resume calling idle().