diff options
author | Neil Hodgson <nyamatongwe@gmail.com> | 2015-10-26 16:20:55 +1100 |
---|---|---|
committer | Neil Hodgson <nyamatongwe@gmail.com> | 2015-10-26 16:20:55 +1100 |
commit | 5c1d404acca099d947a3f6fa6fb0c0b9125fddcf (patch) | |
tree | fd511eedb1808b673f422254d73cb2fe48ec55e9 | |
parent | a964ac27c1ecb76cdbf09b0b2f386466285533c2 (diff) | |
download | scintilla-mirror-5c1d404acca099d947a3f6fa6fb0c0b9125fddcf.tar.gz |
Make timers active in modal dialogs by adding them to NSModalPanelRunLoopMode.
From Mike Lischke.
-rw-r--r-- | cocoa/ScintillaCocoa.mm | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/cocoa/ScintillaCocoa.mm b/cocoa/ScintillaCocoa.mm index 31538aea4..954854af6 100644 --- a/cocoa/ScintillaCocoa.mm +++ b/cocoa/ScintillaCocoa.mm @@ -370,7 +370,7 @@ const CGFloat paddingHighlightY = 2; [notificationQueue enqueueNotification: notification postingStyle: NSPostWhenIdle coalesceMask: (NSNotificationCoalescingOnName | NSNotificationCoalescingOnSender) - forModes: nil]; + forModes: @[NSDefaultRunLoopMode, NSModalPanelRunLoopMode]]; } //-------------------------------------------------------------------------------------------------- @@ -969,7 +969,8 @@ void ScintillaCocoa::FineTickerStart(TickReason reason, int millis, int toleranc [fineTimer setTolerance: tolerance / 1000.0]; } timers[reason] = fineTimer; - [[NSRunLoop currentRunLoop] addTimer:fineTimer forMode:NSDefaultRunLoopMode]; + [NSRunLoop.currentRunLoop addTimer: fineTimer forMode: NSDefaultRunLoopMode]; + [NSRunLoop.currentRunLoop addTimer: fineTimer forMode: NSModalPanelRunLoopMode]; } //-------------------------------------------------------------------------------------------------- @@ -1001,6 +1002,7 @@ bool ScintillaCocoa::SetIdle(bool on) selector: @selector(idleTimerFired:) userInfo: nil repeats: YES]; + [NSRunLoop.currentRunLoop addTimer: idleTimer forMode: NSModalPanelRunLoopMode]; idler.idlerID = reinterpret_cast<IdlerID>(idleTimer); } else |