mirror of
https://github.com/mpv-player/mpv
synced 2025-01-02 21:12:23 +00:00
cocoa_common: order front window only when invisible [2]
Followup to 8df7127
. This refines the condition for front ordering the
condition to account for minimized or hidden state where the window should go
to the front only as a consequnce of user interaction.
This commit is contained in:
parent
4931085a1b
commit
647291bab2
@ -168,6 +168,7 @@ struct vo_cocoa_state {
|
||||
int display_cursor;
|
||||
int cursor_timer;
|
||||
int vo_cursor_autohide_delay;
|
||||
int last_hidden_config;
|
||||
|
||||
bool did_resize;
|
||||
bool did_async_resize;
|
||||
@ -200,6 +201,7 @@ static struct vo_cocoa_state *vo_cocoa_init_state(struct vo *vo)
|
||||
.out_fs_resize = NO,
|
||||
.display_cursor = 1,
|
||||
.vo_cursor_autohide_delay = vo->opts->cursor_autohide_delay,
|
||||
.last_hidden_config = -1,
|
||||
.power_mgmt_assertion = kIOPMNullAssertionID,
|
||||
.accumulated_scroll = 0,
|
||||
.lock = [[NSLock alloc] init],
|
||||
@ -529,7 +531,9 @@ int vo_cocoa_config_window(struct vo *vo, uint32_t d_width,
|
||||
|
||||
if (flags & VOFLAG_HIDDEN) {
|
||||
[s->window orderOut:nil];
|
||||
} else if (![s->window isVisible]) {
|
||||
s->last_hidden_config = vo->config_count;
|
||||
} else if (![s->window isVisible] &&
|
||||
s->last_hidden_config == vo->config_count) {
|
||||
[s->window makeKeyAndOrderFront:nil];
|
||||
[NSApp activateIgnoringOtherApps:YES];
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user