mirror of https://github.com/mpv-player/mpv
Refactor OS X foreground process setting into a separate function.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30964 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
parent
85640449d2
commit
3e7a2bd8c3
|
@ -19,6 +19,7 @@
|
||||||
|
|
||||||
// only to get keycode definitions from HIToolbox/Events.h
|
// only to get keycode definitions from HIToolbox/Events.h
|
||||||
#include <Carbon/Carbon.h>
|
#include <Carbon/Carbon.h>
|
||||||
|
#include "config.h"
|
||||||
#include "osx_common.h"
|
#include "osx_common.h"
|
||||||
#include "video_out.h"
|
#include "video_out.h"
|
||||||
#include "osdep/keycodes.h"
|
#include "osdep/keycodes.h"
|
||||||
|
@ -140,3 +141,25 @@ void config_movie_aspect(float config_aspect)
|
||||||
old_movie_aspect = config_aspect;
|
old_movie_aspect = config_aspect;
|
||||||
our_aspect_change = 0;
|
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
|
||||||
|
}
|
||||||
|
|
|
@ -22,5 +22,6 @@
|
||||||
int convert_key(unsigned key, unsigned charcode);
|
int convert_key(unsigned key, unsigned charcode);
|
||||||
void change_movie_aspect(float new_aspect);
|
void change_movie_aspect(float new_aspect);
|
||||||
void config_movie_aspect(float config_aspect);
|
void config_movie_aspect(float config_aspect);
|
||||||
|
void osx_foreground_hack(void);
|
||||||
|
|
||||||
#endif /* MPLAYER_OSX_COMMON_H */
|
#endif /* MPLAYER_OSX_COMMON_H */
|
||||||
|
|
|
@ -386,23 +386,7 @@ static int preinit(const char *arg)
|
||||||
NSApp = [NSApplication sharedApplication];
|
NSApp = [NSApplication sharedApplication];
|
||||||
isLeopardOrLater = floor(NSAppKitVersionNumber) > 824;
|
isLeopardOrLater = floor(NSAppKitVersionNumber) > 824;
|
||||||
|
|
||||||
#if !defined (CONFIG_MACOSX_FINDER) || !defined (CONFIG_SDL)
|
osx_foreground_hack();
|
||||||
//this chunk of code is heavily based off SDL_macosx.m from SDL
|
|
||||||
ProcessSerialNumber myProc, frProc;
|
|
||||||
Boolean sameProc;
|
|
||||||
|
|
||||||
if (GetFrontProcess(&frProc) == noErr)
|
|
||||||
{
|
|
||||||
if (GetCurrentProcess(&myProc) == noErr)
|
|
||||||
{
|
|
||||||
if (SameProcess(&frProc, &myProc, &sameProc) == noErr && !sameProc)
|
|
||||||
{
|
|
||||||
TransformProcessType(&myProc, kProcessTransformToForegroundApplication);
|
|
||||||
}
|
|
||||||
SetFrontProcess(&myProc);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if(!mpGLView)
|
if(!mpGLView)
|
||||||
{
|
{
|
||||||
|
|
|
@ -1088,27 +1088,7 @@ static int preinit(const char *arg)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#if !defined (CONFIG_MACOSX_FINDER) || !defined (CONFIG_SDL)
|
osx_foreground_hack();
|
||||||
// this chunk of code is heavily based off SDL_macosx.m from SDL
|
|
||||||
// the CPSEnableForegroundOperation that was here before is private and shouldn't be used
|
|
||||||
// replaced by a call to the 10.3+ TransformProcessType
|
|
||||||
{
|
|
||||||
ProcessSerialNumber myProc, frProc;
|
|
||||||
Boolean sameProc;
|
|
||||||
|
|
||||||
if (GetFrontProcess(&frProc) == noErr)
|
|
||||||
{
|
|
||||||
if (GetCurrentProcess(&myProc) == noErr)
|
|
||||||
{
|
|
||||||
if (SameProcess(&frProc, &myProc, &sameProc) == noErr && !sameProc)
|
|
||||||
{
|
|
||||||
TransformProcessType(&myProc, kProcessTransformToForegroundApplication);
|
|
||||||
}
|
|
||||||
SetFrontProcess(&myProc);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue