Send idle events from inside wxYield() in all ports, including wxMSW.
This means it can be now done in wxEventLoopBase itself and calls to ProcessIdle() in the port-specific code are not needed any more, so remove them. This introduces a change in behaviour for wxMSW, where idle event handlers were not invoked from inside wxYield() at all previously, and for wxOSX, where only a single idle event is now generated from wxYield() instead of a stream of them until no idle handler needs any more of them as before. But on the bright side, the new behaviour seems to make most sense and is now the same in all ports. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78222 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -213,10 +213,5 @@ void wxGUIEventLoop::DoYieldFor(long eventsToProcess)
|
||||
// handle timers, sockets etc.
|
||||
OnNextIteration();
|
||||
|
||||
// it's necessary to call ProcessIdle() to update the frames sizes which
|
||||
// might have been changed (it also will update other things set from
|
||||
// OnUpdateUI() which is a nice (and desired) side effect)
|
||||
while ( ProcessIdle() ) {}
|
||||
|
||||
wxEventLoopBase::DoYieldFor(eventsToProcess);
|
||||
}
|
||||
|
Reference in New Issue
Block a user