##// END OF EJS Templates
Always run the OS X loop even if no windows....
Always run the OS X loop even if no windows. Otherwise this can trigger infinite Python-Icon-In-Dock bouncing. See #10137. I will guess that this is because application on OS X may not have windows and still need to process events. It may be that an alternative is to run the loop only once the first time, but I'm unsure. at_least_once = False def inputhook(context): """Inputhook for Cocoa (NSApp)""" NSApp = _NSApp() window_count = msg( msg(NSApp, n('windows')), n('count') ) if not window_count and not at_least_once: at_least_once = True return _stop_on_read(context.fileno()) msg(NSApp, n('run')) if not _triggered.is_set(): # app closed without firing callback, # probably due to last window being closed. # Run the loop manually in this case, # since there may be events still to process (#9734) CoreFoundation.CFRunLoopRun() Closes #10137
Matthias Bussonnier -
r23167:260e9884
Show More
Name Size Modified Last Commit Author
/ IPython / terminal
pt_inputhooks
tests
__init__.py Loading ...
console.py Loading ...
debugger.py Loading ...
embed.py Loading ...
interactiveshell.py Loading ...
ipapp.py Loading ...
magics.py Loading ...
prompts.py Loading ...
ptshell.py Loading ...
ptutils.py Loading ...
shortcuts.py Loading ...