summaryrefslogtreecommitdiffstats
path: root/video/out/x11_common.c
diff options
context:
space:
mode:
Diffstat (limited to 'video/out/x11_common.c')
-rw-r--r--video/out/x11_common.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/video/out/x11_common.c b/video/out/x11_common.c
index af867ea8d6..2ffa44963b 100644
--- a/video/out/x11_common.c
+++ b/video/out/x11_common.c
@@ -1301,6 +1301,17 @@ static void vo_x11_map_window(struct vo *vo, int x, int y, int w, int h)
vo_x11_move_resize(vo, true, true, x, y, w, h);
if (!vo->opts->border)
vo_x11_decoration(vo, 0);
+
+ if (vo->opts->fullscreen && (x11->fs_type & vo_wm_FULLSCREEN)) {
+ Atom state = x11->XA_NET_WM_STATE_FULLSCREEN;
+ XChangeProperty(x11->display, x11->window, x11->XA_NET_WM_STATE, XA_ATOM,
+ 32, PropModeAppend, (unsigned char *)&state, 1);
+ x11->fs = 1;
+ // The "saved" positions are bogus, so reset them when leaving FS again.
+ x11->size_changed_during_fs = true;
+ x11->pos_changed_during_fs = true;
+ }
+
// map window
vo_x11_selectinput_witherr(vo, x11->display, x11->window,
StructureNotifyMask | ExposureMask |