From c4b08a9a1149a83d7374eaea9863dd4c7cbd12d7 Mon Sep 17 00:00:00 2001 From: wm4 Date: Thu, 18 Jul 2013 14:05:39 +0200 Subject: video: remove fullscreen flags chaos There was a MPOpts fullscreen field, a mp_vo_opts.fs field, and VOFLAG_FULLSCREEN. Remove all these and introduce a mp_vo_opts.fullscreen flag instead. When VOs receive VOCTRL_FULLSCREEN, they are supposed to set the current fullscreen mode to the state in mp_vo_opts.fullscreen. They also should do this implicitly on config(). VOs which are capable of doing so can update the mp_vo_opts.fullscreen if the actual fullscreen mode changes (e.g. if the user uses the window manager controls). If fullscreen mode switching fails, they can also set mp_vo_opts.fullscreen to the actual state. Note that the X11 backend does almost none of this, and it has a private fs flag to store the fullscreen flag, instead of getting it from the WM. (Possibly because it has to deal with broken WMs.) The fullscreen option has to be checked on config() to deal with the -fs option, especially with something like: mpv --fs file1.mkv --{ --no-fs file2.mkv --} (It should start in fullscreen mode, but go to windowed mode when playing file2.mkv.) Wayland changes by: Alexander Preisinger Cocoa changes by: Stefano Pigozzi --- video/out/wayland_common.h | 7 ------- 1 file changed, 7 deletions(-) (limited to 'video/out/wayland_common.h') diff --git a/video/out/wayland_common.h b/video/out/wayland_common.h index dce992beb2..955a67b20e 100644 --- a/video/out/wayland_common.h +++ b/video/out/wayland_common.h @@ -29,11 +29,6 @@ #include "config.h" -enum vo_wayland_window_type { - TYPE_TOPLEVEL, - TYPE_FULLSCREEN -}; - struct vo; struct vo_wayland_state; @@ -86,8 +81,6 @@ struct vo_wayland_window { int events; /* mplayer events (VO_EVENT_RESIZE) */ - enum vo_wayland_window_type type; /* is fullscreen */ - /* Because the egl windows have a special resize windw function we have to * register it first before doing any resizing. * This makes us independet from the output driver */ -- cgit v1.2.3