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 | c8a5af30d0dd53c8447303d35bc7d22ba3d2d6e9 (patch) | |
tree | 3943b3e65f6dee8b7beb627cb3346c4b5df9d991 | |
parent | 3c8520786fc9b35283d6e55eb1b4b85005a0803e (diff) | |
download | scintilla-mirror-c8a5af30d0dd53c8447303d35bc7d22ba3d2d6e9.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 |