diff options
Diffstat (limited to 'libvo/osx_common.c')
-rw-r--r-- | libvo/osx_common.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/libvo/osx_common.c b/libvo/osx_common.c index e82bc7aa6e..b3e39a62aa 100644 --- a/libvo/osx_common.c +++ b/libvo/osx_common.c @@ -19,6 +19,7 @@ // only to get keycode definitions from HIToolbox/Events.h #include <Carbon/Carbon.h> +#include "config.h" #include "osx_common.h" #include "old_vo_defines.h" #include "video_out.h" @@ -141,3 +142,25 @@ void config_movie_aspect(float config_aspect) old_movie_aspect = config_aspect; our_aspect_change = 0; } + +/** This chunk of code is heavily based off SDL_macosx.m from SDL. + * The CPSEnableForegroundOperation that was here before is private + * and should not be used. + * Replaced by a call to the 10.3+ TransformProcessType. + */ +void osx_foreground_hack(void) +{ +#if !defined (CONFIG_MACOSX_FINDER) || !defined (CONFIG_SDL) + ProcessSerialNumber myProc, frProc; + Boolean sameProc; + + if (GetFrontProcess(&frProc) == noErr && + GetCurrentProcess(&myProc) == noErr) { + if (SameProcess(&frProc, &myProc, &sameProc) == noErr && !sameProc) { + TransformProcessType(&myProc, + kProcessTransformToForegroundApplication); + } + SetFrontProcess(&myProc); + } +#endif +} |