summaryrefslogtreecommitdiffstats
path: root/video
diff options
context:
space:
mode:
Diffstat (limited to 'video')
-rw-r--r--video/out/cocoa_common.m2
-rw-r--r--video/out/vo_sdl.c1
-rw-r--r--video/out/w32_common.c1
-rw-r--r--video/out/wayland_common.c1
-rw-r--r--video/out/x11_common.c2
5 files changed, 7 insertions, 0 deletions
diff --git a/video/out/cocoa_common.m b/video/out/cocoa_common.m
index db36e15c97..796a67c832 100644
--- a/video/out/cocoa_common.m
+++ b/video/out/cocoa_common.m
@@ -581,6 +581,8 @@ static void vo_cocoa_fullscreen(struct vo *vo)
if (s->embedded)
return;
+ opts->fullscreen = !opts->fullscreen;
+
vo_cocoa_update_screen_info(vo, NULL);
draw_changes_after_next_frame(vo);
diff --git a/video/out/vo_sdl.c b/video/out/vo_sdl.c
index 822b5009aa..693a543c94 100644
--- a/video/out/vo_sdl.c
+++ b/video/out/vo_sdl.c
@@ -1001,6 +1001,7 @@ static int control(struct vo *vo, uint32_t request, void *data)
switch (request) {
case VOCTRL_FULLSCREEN:
+ vo->opts->fullscreen = !vo->opts->fullscreen;
set_fullscreen(vo);
return 1;
case VOCTRL_REDRAW_FRAME:
diff --git a/video/out/w32_common.c b/video/out/w32_common.c
index 0df65a1eac..f0366393ff 100644
--- a/video/out/w32_common.c
+++ b/video/out/w32_common.c
@@ -1215,6 +1215,7 @@ static int gui_thread_control(struct vo_w32_state *w32, int request, void *arg)
{
switch (request) {
case VOCTRL_FULLSCREEN:
+ w32->opts->fullscreen = !w32->opts->fullscreen;
if (w32->opts->fullscreen != w32->current_fs)
reinit_window_state(w32);
return VO_TRUE;
diff --git a/video/out/wayland_common.c b/video/out/wayland_common.c
index bf318d7bbc..843049816e 100644
--- a/video/out/wayland_common.c
+++ b/video/out/wayland_common.c
@@ -1189,6 +1189,7 @@ int vo_wayland_control (struct vo *vo, int *events, int request, void *arg)
*events |= vo_wayland_check_events(vo);
return VO_TRUE;
case VOCTRL_FULLSCREEN:
+ vo->opts->fullscreen = !vo->opts->fullscreen;
vo_wayland_fullscreen(vo);
return VO_TRUE;
case VOCTRL_ONTOP:
diff --git a/video/out/x11_common.c b/video/out/x11_common.c
index f5a3f9e808..cb5f9c524c 100644
--- a/video/out/x11_common.c
+++ b/video/out/x11_common.c
@@ -1615,12 +1615,14 @@ static void vo_x11_border(struct vo *vo)
int vo_x11_control(struct vo *vo, int *events, int request, void *arg)
{
+ struct mp_vo_opts *opts = vo->opts;
struct vo_x11_state *x11 = vo->x11;
switch (request) {
case VOCTRL_CHECK_EVENTS:
*events |= vo_x11_check_events(vo);
return VO_TRUE;
case VOCTRL_FULLSCREEN:
+ opts->fullscreen = !opts->fullscreen;
vo_x11_fullscreen(vo);
*events |= VO_EVENT_RESIZE;
return VO_TRUE;