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/x11_common.h | 1 + 1 file changed, 1 insertion(+) (limited to 'video/out/x11_common.h') diff --git a/video/out/x11_common.h b/video/out/x11_common.h index 88a52e1953..9766306f73 100644 --- a/video/out/x11_common.h +++ b/video/out/x11_common.h @@ -143,6 +143,7 @@ void vo_x11_clearwindow(struct vo *vo, Window vo_window); void vo_x11_ontop(struct vo *vo); void vo_x11_border(struct vo *vo); void vo_x11_update_screeninfo(struct vo *vo); +int vo_x11_control(struct vo *vo, int *events, int request, void *arg); double vo_x11_vm_get_fps(struct vo *vo); -- cgit v1.2.3