vlc | branch: master | Steve Lhomme <[email protected]> | Mon Mar 25 11:13:23 2019 +0100| [abf7aab70370a310d43679b203624c01c114c43a] | committer: Steve Lhomme
vout:win32: separate the display area structure from the display_sys > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=abf7aab70370a310d43679b203624c01c114c43a --- modules/video_output/win32/common.c | 17 ++++++----------- modules/video_output/win32/common.h | 4 +++- modules/video_output/win32/direct3d11.c | 7 ++++--- modules/video_output/win32/direct3d9.c | 3 ++- modules/video_output/win32/glwin32.c | 3 ++- modules/video_output/win32/wingdi.c | 3 ++- 6 files changed, 19 insertions(+), 18 deletions(-) diff --git a/modules/video_output/win32/common.c b/modules/video_output/win32/common.c index 094b3f2202..10072047b1 100644 --- a/modules/video_output/win32/common.c +++ b/modules/video_output/win32/common.c @@ -73,7 +73,7 @@ static bool GetExternalDimensions(void *opaque, UINT *width, UINT *height) return true; } -static void InitArea(vout_display_t *vd, display_win32_area_t *area, const vout_display_cfg_t *vdcfg) +void InitArea(vout_display_t *vd, display_win32_area_t *area, const vout_display_cfg_t *vdcfg) { area->place_changed = false; area->pf_GetDisplayDimensions = GetExternalDimensions; @@ -83,10 +83,8 @@ static void InitArea(vout_display_t *vd, display_win32_area_t *area, const vout_ /* */ int CommonInit(vout_display_t *vd, display_win32_area_t *area, vout_display_sys_win32_t *sys, - bool b_windowless, const vout_display_cfg_t *vdcfg) + bool b_windowless) { - InitArea(vd, area, vdcfg); - sys->hwnd = NULL; sys->hvideownd = NULL; sys->hparent = NULL; @@ -114,7 +112,7 @@ int CommonInit(vout_display_t *vd, display_win32_area_t *area, vout_display_sys_ var_Create(vd, "video-deco", VLC_VAR_BOOL | VLC_VAR_DOINHERIT); /* */ - sys->event = EventThreadCreate(vd, vdcfg); + sys->event = EventThreadCreate(vd, &area->vdcfg); if (!sys->event) return VLC_EGENERIC; @@ -125,8 +123,8 @@ int CommonInit(vout_display_t *vd, display_win32_area_t *area, vout_display_sys_ #endif cfg.x = var_InheritInteger(vd, "video-x"); cfg.y = var_InheritInteger(vd, "video-y"); - cfg.width = vdcfg->display.width; - cfg.height = vdcfg->display.height; + cfg.width = area->vdcfg.display.width; + cfg.height = area->vdcfg.display.height; event_hwnd_t hwnd; if (EventThreadStart(sys->event, &hwnd, &cfg)) @@ -156,9 +154,6 @@ void UpdateRects(vout_display_t *vd, display_win32_area_t *area, vout_display_sy UINT display_width, display_height; - /* */ - const vout_display_cfg_t *cfg = &area->vdcfg; - /* Retrieve the window size */ if (!area->pf_GetDisplayDimensions(area->opaque_dimensions, &display_width, &display_height)) { @@ -167,7 +162,7 @@ void UpdateRects(vout_display_t *vd, display_win32_area_t *area, vout_display_sy } /* Update the window position and size */ - vout_display_cfg_t place_cfg = *cfg; + vout_display_cfg_t place_cfg = area->vdcfg; place_cfg.display.width = display_width; place_cfg.display.height = display_height; diff --git a/modules/video_output/win32/common.h b/modules/video_output/win32/common.h index e3c85a27ea..97d8d63b60 100644 --- a/modules/video_output/win32/common.h +++ b/modules/video_output/win32/common.h @@ -80,7 +80,7 @@ typedef struct vout_display_sys_win32_t /***************************************************************************** * Prototypes from common.c *****************************************************************************/ -int CommonInit(vout_display_t *, display_win32_area_t *, vout_display_sys_win32_t *, bool b_windowless, const vout_display_cfg_t *); +int CommonInit(vout_display_t *, display_win32_area_t *, vout_display_sys_win32_t *, bool b_windowless); #if !VLC_WINSTORE_APP void CommonClean(vlc_object_t *, vout_display_sys_win32_t *); #endif /* !VLC_WINSTORE_APP */ @@ -89,6 +89,8 @@ int CommonControl(vout_display_t *, display_win32_area_t *, vout_display_sys_wi void UpdateRects (vout_display_t *, display_win32_area_t *, vout_display_sys_win32_t *); +void InitArea(vout_display_t *, display_win32_area_t *, const vout_display_cfg_t *); + /***************************************************************************** * Constants *****************************************************************************/ diff --git a/modules/video_output/win32/direct3d11.c b/modules/video_output/win32/direct3d11.c index a3b8eec408..3d480a41ce 100644 --- a/modules/video_output/win32/direct3d11.c +++ b/modules/video_output/win32/direct3d11.c @@ -479,12 +479,13 @@ static int Open(vout_display_t *vd, const vout_display_cfg_t *cfg, goto error; } #endif - if (CommonInit(vd, &sys->area, &sys->sys, d3d11_ctx != NULL, cfg)) + InitArea(vd, &sys->area, cfg); + if (CommonInit(vd, &sys->area, &sys->sys, d3d11_ctx != NULL)) goto error; #if VLC_WINSTORE_APP - sys->sys.area.pf_GetDisplayDimensions = GetExtenalSwapchainDimensions; - sys->sys.area.opaque_dimensions = sys; + sys->area.pf_GetDisplayDimensions = GetExtenalSwapchainDimensions; + sys->area.opaque_dimensions = sys; #endif if (vd->source.projection_mode != PROJECTION_MODE_RECTANGULAR && sys->sys.hvideownd) diff --git a/modules/video_output/win32/direct3d9.c b/modules/video_output/win32/direct3d9.c index e0765f9c3a..57d60f4770 100644 --- a/modules/video_output/win32/direct3d9.c +++ b/modules/video_output/win32/direct3d9.c @@ -1680,7 +1680,8 @@ static int Open(vout_display_t *vd, const vout_display_cfg_t *cfg, sys->desktop_save.is_fullscreen = cfg->is_fullscreen; sys->desktop_save.is_on_top = false; - if (CommonInit(vd, &sys->area, &sys->sys, d3d9_device != NULL, cfg)) + InitArea(vd, &sys->area, cfg); + if (CommonInit(vd, &sys->area, &sys->sys, d3d9_device != NULL)) goto error; /* */ diff --git a/modules/video_output/win32/glwin32.c b/modules/video_output/win32/glwin32.c index 5d58a87992..c26dbf0a02 100644 --- a/modules/video_output/win32/glwin32.c +++ b/modules/video_output/win32/glwin32.c @@ -122,7 +122,8 @@ static int Open(vout_display_t *vd, const vout_display_cfg_t *cfg, return VLC_ENOMEM; /* */ - if (CommonInit(vd, &sys->area, &sys->sys, false, cfg)) + InitArea(vd, &sys->area, cfg); + if (CommonInit(vd, &sys->area, &sys->sys, false)) goto error; if (vd->source.projection_mode != PROJECTION_MODE_RECTANGULAR) diff --git a/modules/video_output/win32/wingdi.c b/modules/video_output/win32/wingdi.c index 57d581022c..beb2f327ce 100644 --- a/modules/video_output/win32/wingdi.c +++ b/modules/video_output/win32/wingdi.c @@ -117,7 +117,8 @@ static int Open(vout_display_t *vd, const vout_display_cfg_t *cfg, if (!sys) return VLC_ENOMEM; - if (CommonInit(vd, &sys->area, &sys->sys, false, cfg)) + InitArea(vd, &sys->area, cfg); + if (CommonInit(vd, &sys->area, &sys->sys, false)) goto error; /* */ _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
