]> git.sesse.net Git - vlc/commitdiff
Updated xcb to use new VOUT_DISPLAY_CHANGE_DISPLAY_SIZE parameter.
authorLaurent Aimar <fenrir@videolan.org>
Wed, 30 Sep 2009 19:24:22 +0000 (21:24 +0200)
committerLaurent Aimar <fenrir@videolan.org>
Wed, 30 Sep 2009 19:24:22 +0000 (21:24 +0200)
modules/video_output/xcb/x11.c
modules/video_output/xcb/xvideo.c

index 5e908e29c880eed54f35e8ba7f42080bc05d89d5..e97fdfd538a3ca689eb2eba40694496eff0877b2 100644 (file)
@@ -451,10 +451,12 @@ static int Control (vout_display_t *vd, int query, va_list ap)
     {
         const vout_display_cfg_t *p_cfg =
             (const vout_display_cfg_t*)va_arg (ap, const vout_display_cfg_t *);
+        const bool is_forced = (bool)va_arg (ap, int);
 
-        if (vout_window_SetSize (p_sys->embed,
-                                  p_cfg->display.width,
-                                  p_cfg->display.height))
+        if (is_forced
+         && vout_window_SetSize (p_sys->embed,
+                                 p_cfg->display.width,
+                                 p_cfg->display.height))
             return VLC_EGENERIC;
 
         vout_display_place_t place;
index 65c15e9d8cbc26ca1158f02621be96add45f8814..50f4157b6792c76f8e5b802b0ff8ae9c15f2f03c 100644 (file)
@@ -670,6 +670,7 @@ static int Control (vout_display_t *vd, int query, va_list ap)
     {
         const vout_display_cfg_t *cfg;
         const video_format_t *source;
+        bool is_forced;
 
         if (query == VOUT_DISPLAY_CHANGE_SOURCE_ASPECT
          || query == VOUT_DISPLAY_CHANGE_SOURCE_CROP)
@@ -681,10 +682,13 @@ static int Control (vout_display_t *vd, int query, va_list ap)
         {
             source = &vd->source;
             cfg = (const vout_display_cfg_t*)va_arg (ap, const vout_display_cfg_t *);
+            if (query == VOUT_DISPLAY_CHANGE_DISPLAY_SIZE)
+                is_forced = (bool)va_arg (ap, int);
         }
 
         /* */
         if (query == VOUT_DISPLAY_CHANGE_DISPLAY_SIZE
+         && is_forced
          && (cfg->display.width  != vd->cfg->display.width
            ||cfg->display.height != vd->cfg->display.height)
          && vout_window_SetSize (p_sys->embed,