@@ -278,8 +278,11 @@ static void lazy_init(void) {
278278 backend_inited = true ;
279279
280280 NSApp = [NSApplication sharedApplication ];
281+ [NSApp setActivationPolicy: NSApplicationActivationPolicyRegular];
281282
282283#ifndef PYPY
284+ /* TODO: remove ifndef after the new PyPy with the PyOS_InputHook implementation
285+ get released: https://bitbucket.org/pypy/pypy/commits/caaf91a */
283286 PyOS_InputHook = wait_for_stdin;
284287#endif
285288
@@ -2579,26 +2582,13 @@ static void context_cleanup(const void* info)
25792582 Timer_new, /* tp_new */
25802583};
25812584
2585+ #ifndef COMPILING_FOR_10_6
25822586static bool verify_framework (void )
25832587{
25842588 ProcessSerialNumber psn;
2585- /* These methods are deprecated, but they don't require the app to
2586- have started */
2587- #ifdef COMPILING_FOR_10_6
2588- NSApp = [NSApplication sharedApplication ];
2589- NSApplicationActivationPolicy activationPolicy = [NSApp activationPolicy ];
2590- switch (activationPolicy) {
2591- case NSApplicationActivationPolicyRegular:
2592- case NSApplicationActivationPolicyAccessory:
2593- return true ;
2594- case NSApplicationActivationPolicyProhibited:
2595- break ;
2596- }
2597- #else
25982589 if (CGMainDisplayID ()!=0
25992590 && GetCurrentProcess (&psn)==noErr
26002591 && SetFrontProcess (&psn)==noErr) return true ;
2601- #endif
26022592 PyErr_SetString (PyExc_ImportError,
26032593 " Python is not installed as a framework. The Mac OS X backend will "
26042594 " not be able to function correctly if Python is not installed as a "
@@ -2610,6 +2600,7 @@ static bool verify_framework(void)
26102600 " Matplotlib FAQ for more information." );
26112601 return false ;
26122602}
2603+ #endif
26132604
26142605static struct PyMethodDef methods[] = {
26152606 {" event_loop_is_running" ,
@@ -2660,8 +2651,11 @@ static bool verify_framework(void)
26602651 || PyType_Ready (&TimerType) < 0 )
26612652 return NULL ;
26622653
2654+ #ifndef COMPILING_FOR_10_6
2655+ /* if >=10.6 invoke setActivationPolicy in lazy_init */
26632656 if (!verify_framework ())
26642657 return NULL ;
2658+ #endif
26652659
26662660 module = PyModule_Create (&moduledef);
26672661 if (!module)
0 commit comments