]> git.sesse.net Git - vlc/commitdiff
vout: pass only a boolean to VOUT_DISPLAY_CHANGE_FULLSCREEN control
authorRémi Denis-Courmont <remi@remlab.net>
Wed, 15 Oct 2014 19:31:55 +0000 (22:31 +0300)
committerRémi Denis-Courmont <remi@remlab.net>
Thu, 16 Oct 2014 17:23:39 +0000 (20:23 +0300)
include/vlc_vout_display.h
modules/video_output/caopengllayer.m
modules/video_output/ios2.m
modules/video_output/kva.c
modules/video_output/msw/common.c
modules/video_output/sdl.c
src/video_output/display.c

index 939e4e25d2eaf93ec264b150b61b78b490da8eed..fc520508441f999a0e5877728b370e451b422fd3 100644 (file)
@@ -143,7 +143,7 @@ enum {
 
     /* Ask the module to acknowledge/refuse the fullscreen state change after
      * being requested (externally or by VOUT_DISPLAY_EVENT_FULLSCREEN */
-    VOUT_DISPLAY_CHANGE_FULLSCREEN,     /* const vout_display_cfg_t *p_cfg */
+    VOUT_DISPLAY_CHANGE_FULLSCREEN,     /* bool fs */
 
     /* Ask the module to acknowledge/refuse the window management state change
      * after being requested externally or by VOUT_DISPLAY_WINDOW_STATE */
index 713edb951de72a6d8df5b10e1197e51e328e92cc..4571fbb172629cb71f134bf84ca8098864654f69 100644 (file)
@@ -300,7 +300,6 @@ static int Control (vout_display_t *vd, int query, va_list ap)
         case VOUT_DISPLAY_CHANGE_ZOOM:
         case VOUT_DISPLAY_CHANGE_SOURCE_ASPECT:
         case VOUT_DISPLAY_CHANGE_SOURCE_CROP:
-        case VOUT_DISPLAY_CHANGE_FULLSCREEN:
         {
             const vout_display_cfg_t *cfg;
             const video_format_t *source;
@@ -343,6 +342,7 @@ static int Control (vout_display_t *vd, int query, va_list ap)
             assert (0);
         default:
             msg_Err (vd, "Unhandled request %d", query);
+        case VOUT_DISPLAY_CHANGE_FULLSCREEN:
             return VLC_EGENERIC;
     }
 
index feb22036206670e66a0f4aff1270280a9b8893dc..3efeb1207b2dab0d43bc418c18a8b4de88317341 100644 (file)
@@ -265,7 +265,6 @@ static int Control(vout_display_t *vd, int query, va_list ap)
         case VOUT_DISPLAY_HIDE_MOUSE:
             return VLC_EGENERIC;
 
-        case VOUT_DISPLAY_CHANGE_FULLSCREEN:
         case VOUT_DISPLAY_CHANGE_DISPLAY_FILLED:
         case VOUT_DISPLAY_CHANGE_ZOOM:
         case VOUT_DISPLAY_CHANGE_SOURCE_ASPECT:
@@ -320,6 +319,7 @@ static int Control(vout_display_t *vd, int query, va_list ap)
             assert (0);
         default:
             msg_Err(vd, "Unknown request %d", query);
+        case VOUT_DISPLAY_CHANGE_FULLSCREEN:
             return VLC_EGENERIC;
     }
 }
index d4a1153924e6a0c41509518cd033001430c16be8..b4d72b4c661d69202d4078457a2451cca9b33265 100644 (file)
@@ -442,10 +442,9 @@ static int Control( vout_display_t *vd, int query, va_list args )
 
     case VOUT_DISPLAY_CHANGE_FULLSCREEN:
     {
-        const vout_display_cfg_t *cfg = va_arg(args, const vout_display_cfg_t *);
+        bool fs = va_arg(args, int);
 
-        WinPostMsg( sys->client, WM_VLC_FULLSCREEN_CHANGE,
-                    MPFROMLONG( cfg->is_fullscreen ), 0 );
+        WinPostMsg( sys->client, WM_VLC_FULLSCREEN_CHANGE, MPFROMLONG(fs), 0 );
         return VLC_SUCCESS;
     }
 
index fa9fb86600f787d6d110c8fac1c231fd253e8931..56870916c39e487319c4db90c3706b0741916c84 100644 (file)
@@ -607,9 +607,9 @@ int CommonControl(vout_display_t *vd, int query, va_list args)
         sys->is_on_top = is_on_top;
         return VLC_SUCCESS;
     }
-    case VOUT_DISPLAY_CHANGE_FULLSCREEN: {   /* const vout_display_cfg_t *p_cfg */
-        const vout_display_cfg_t *cfg = va_arg(args, const vout_display_cfg_t *);
-        if (CommonControlSetFullscreen(vd, cfg->is_fullscreen))
+    case VOUT_DISPLAY_CHANGE_FULLSCREEN: {
+        bool fs = va_arg(args, int);
+        if (CommonControlSetFullscreen(vd, fs))
             return VLC_EGENERIC;
         UpdateRects(vd, NULL, NULL, false);
         return VLC_SUCCESS;
index c81c59ccaf98e1fe4c0a94f66dce118ba003468b..990ff5a4caf312431907485b36ff013255e24a50 100644 (file)
@@ -494,24 +494,17 @@ static int Control(vout_display_t *vd, int query, va_list args)
         return VLC_SUCCESS;
     }
     case VOUT_DISPLAY_CHANGE_FULLSCREEN: {
-        vout_display_cfg_t cfg = *va_arg(args, const vout_display_cfg_t *);
+        bool fs = va_arg(args, int);
 
         /* Fix flags */
         sys->display_flags &= ~(SDL_FULLSCREEN | SDL_RESIZABLE);
-        sys->display_flags |= cfg.is_fullscreen ? SDL_FULLSCREEN : SDL_RESIZABLE;
+        sys->display_flags |= fs ? SDL_FULLSCREEN : SDL_RESIZABLE;
 
-        if (cfg.is_fullscreen) {
-            cfg.display.width = sys->desktop_width;
-            cfg.display.height = sys->desktop_height;
-        }
-
-        if (sys->overlay) {
-            sys->display = SDL_SetVideoMode(cfg.display.width, cfg.display.height,
+        if (sys->overlay)
+            sys->display = SDL_SetVideoMode(sys->desktop_width, sys->desktop_height,
                                             sys->display_bpp, sys->display_flags);
 
-            vout_display_PlacePicture(&sys->place, &vd->source, &cfg, !sys->overlay);
-        }
-        vout_display_SendEventDisplaySize(vd, cfg.display.width, cfg.display.height);
+        vout_display_SendEventDisplaySize(vd, sys->desktop_width, sys->desktop_height);
         return VLC_SUCCESS;
     }
     case VOUT_DISPLAY_CHANGE_ZOOM:
index f34b781c36ef217dfba995934624c84696736dba..ec0871de4d46776f5791ccc69a78ddf90a23e2ce 100644 (file)
@@ -858,13 +858,8 @@ bool vout_ManageDisplay(vout_display_t *vd, bool allow_reset_pictures)
 
         /* */
         if (ch_fullscreen) {
-            vout_display_cfg_t cfg = osys->cfg;
-
-            cfg.is_fullscreen  = is_fullscreen;
-            cfg.display.width  = cfg.is_fullscreen ? 0 : osys->width_saved;
-            cfg.display.height = cfg.is_fullscreen ? 0 : osys->height_saved;
-
-            if (vout_display_Control(vd, VOUT_DISPLAY_CHANGE_FULLSCREEN, &cfg) == VLC_SUCCESS) {
+            if (vout_display_Control(vd, VOUT_DISPLAY_CHANGE_FULLSCREEN,
+                                     is_fullscreen) == VLC_SUCCESS) {
                 osys->cfg.is_fullscreen = is_fullscreen;
 
                 if (!is_fullscreen)