diff options
-rw-r--r-- | src/corelib/fpg_main.pas | 8 | ||||
-rw-r--r-- | src/corelib/x11/fpg_x11.pas | 1 |
2 files changed, 5 insertions, 4 deletions
diff --git a/src/corelib/fpg_main.pas b/src/corelib/fpg_main.pas index 11f0f3dd..88143118 100644 --- a/src/corelib/fpg_main.pas +++ b/src/corelib/fpg_main.pas @@ -1582,11 +1582,11 @@ end; procedure TfpgApplication.ProcessMessages; begin Flush; -// while DoMessagesPending do // this blocked timers and other non-OS code -// begin + while DoMessagesPending do + begin WaitWindowMessage(250); -// Flush; -// end; + Flush; + end; end; procedure TfpgApplication.SetMessageHook(AWidget: TObject; const AMsgCode: integer; AListener: TObject); diff --git a/src/corelib/x11/fpg_x11.pas b/src/corelib/x11/fpg_x11.pas index 8c7350d7..e66f9344 100644 --- a/src/corelib/x11/fpg_x11.pas +++ b/src/corelib/x11/fpg_x11.pas @@ -1366,6 +1366,7 @@ end; function TfpgX11Application.DoMessagesPending: boolean; begin Result := (XPending(display) > 0); + fpgCheckTimers; end; function GetParentWindow(wh: TfpgWinHandle; var pw, rw: TfpgWinHandle): boolean; |