From bf10a4fdfa40cbe519e6ccb7fb895332da2021d1 Mon Sep 17 00:00:00 2001 From: wm4 Date: Wed, 15 May 2013 18:17:18 +0200 Subject: video/out: introduce vo_control for gl_common based VOs Instead of having separate callbacks for each backend-handled feature (like MPGLContext.fullscreen, MPGLContext.border, etc.), pass the VOCTRL responsible for this directly to the backend. This allows removing a bunch of callbacks, that currently must be set even for optional/lesser features (like VOCTRL_BORDER). This requires changes to all VOs using gl_common, as well as all backends that support gl_common. Also introduce VOCTRL_CHECK_EVENTS. vo.check_events is now optional. VO backends can use VOCTRL_CHECK_EVENTS instead to implementing check_events. This has the advantage that the event handling code in VOs doesn't have to be duplicated if vo_control() is used. --- video/out/w32_common.h | 1 + 1 file changed, 1 insertion(+) (limited to 'video/out/w32_common.h') diff --git a/video/out/w32_common.h b/video/out/w32_common.h index d8df37d6fa..400a429019 100644 --- a/video/out/w32_common.h +++ b/video/out/w32_common.h @@ -56,6 +56,7 @@ void vo_w32_uninit(struct vo *vo); void vo_w32_ontop(struct vo *vo); void vo_w32_border(struct vo *vo); void vo_w32_fullscreen(struct vo *vo); +int vo_w32_control(struct vo *vo, int *events, int request, void *arg); int vo_w32_check_events(struct vo *vo); int vo_w32_config(struct vo *vo, uint32_t, uint32_t, uint32_t); void w32_update_xinerama_info(struct vo *vo); -- cgit v1.2.3