mirror of https://github.com/mpv-player/mpv
mac: add an option to change the App activation policy
useful to hide the app icon in the Dock if necessary.
This commit is contained in:
parent
e28724d90d
commit
03047a0169
|
@ -5858,6 +5858,13 @@ The following video options are currently all specific to ``--vo=gpu`` and
|
|||
set anyway.
|
||||
OS X and cocoa-cb only
|
||||
|
||||
|
||||
``--macos-app-activation-policy=<regular|accessory|prohibited>``
|
||||
Changes the App activation policy. With accessory the mpv icon in the Dock
|
||||
can be hidden. (default: regular)
|
||||
|
||||
macOS only.
|
||||
|
||||
``--android-surface-size=<WxH>``
|
||||
Set dimensions of the rendering surface used by the Android gpu context.
|
||||
Needs to be set by the embedding application if the dimensions change during
|
||||
|
|
|
@ -28,6 +28,7 @@ struct macos_opts {
|
|||
struct m_color macos_title_bar_color;
|
||||
int macos_fs_animation_duration;
|
||||
int macos_force_dedicated_gpu;
|
||||
int macos_app_activation_policy;
|
||||
int cocoa_cb_sw_renderer;
|
||||
int cocoa_cb_10bit_context;
|
||||
};
|
||||
|
|
|
@ -63,6 +63,8 @@ const struct m_sub_options macos_conf = {
|
|||
OPT_CHOICE(macos_fs_animation_duration, {"default", -1}),
|
||||
M_RANGE(0, 1000)},
|
||||
{"macos-force-dedicated-gpu", OPT_FLAG(macos_force_dedicated_gpu)},
|
||||
{"macos-app-activation-policy", OPT_CHOICE(macos_app_activation_policy,
|
||||
{"regular", 0}, {"accessory", 1}, {"prohibited", 2})},
|
||||
{"cocoa-cb-sw-renderer", OPT_CHOICE(cocoa_cb_sw_renderer,
|
||||
{"auto", -1}, {"no", 0}, {"yes", 1})},
|
||||
{"cocoa-cb-10bit-context", OPT_FLAG(cocoa_cb_10bit_context)},
|
||||
|
|
|
@ -61,7 +61,24 @@ class Common: NSObject {
|
|||
}
|
||||
|
||||
func initApp() {
|
||||
NSApp.setActivationPolicy(.regular)
|
||||
guard let mpv = mpv else {
|
||||
log.sendError("Something went wrong, no MPVHelper was initialized")
|
||||
exit(1)
|
||||
}
|
||||
|
||||
var policy: NSApplication.ActivationPolicy = .regular
|
||||
switch mpv.macOpts.macos_app_activation_policy {
|
||||
case 0:
|
||||
policy = .regular
|
||||
case 1:
|
||||
policy = .accessory
|
||||
case 2:
|
||||
policy = .prohibited
|
||||
default:
|
||||
break
|
||||
}
|
||||
|
||||
NSApp.setActivationPolicy(policy)
|
||||
setAppIcon()
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue