From fb3c11fe915e0a5553b4a99b6b8c29d641df4028 Mon Sep 17 00:00:00 2001 From: "hyatt%netscape.com" Date: Thu, 14 Feb 2002 02:55:52 +0000 Subject: [PATCH] Refining the event loop for cocoa plevents. Not part of build. --- widget/src/cocoa/nsToolkit.mm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/widget/src/cocoa/nsToolkit.mm b/widget/src/cocoa/nsToolkit.mm index a3d8f56a5e0c..8f2c4cb90e63 100644 --- a/widget/src/cocoa/nsToolkit.mm +++ b/widget/src/cocoa/nsToolkit.mm @@ -130,7 +130,7 @@ printf("shutting down event queue\n"); // Called periodically to process PLEvents from the queue on the current thread // -#define LOOP_THRESHOLD 10 +#define LOOP_THRESHOLD 20 - (void)eventTimer:(NSTimer *)theTimer { @@ -140,6 +140,10 @@ printf("shutting down event queue\n"); if (queue) { nsresult rv = NS_OK; for (PRInt32 i = 0; i < LOOP_THRESHOLD; i++) { + PRBool pendingEvents = PR_FALSE; + queue->PendingEvents(&pendingEvents); + if (!pendingEvents) + break; queue->ProcessPendingEvents(); NS_ASSERTION(NS_SUCCEEDED(rv), "Error processing PLEvents"); }