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/cocoa_common.h | 1 + 1 file changed, 1 insertion(+) (limited to 'video/out/cocoa_common.h') diff --git a/video/out/cocoa_common.h b/video/out/cocoa_common.h index 823325ad15..b352ce160b 100644 --- a/video/out/cocoa_common.h +++ b/video/out/cocoa_common.h @@ -43,6 +43,7 @@ void vo_cocoa_fullscreen(struct vo *vo); void vo_cocoa_ontop(struct vo *vo); void vo_cocoa_pause(struct vo *vo); void vo_cocoa_resume(struct vo *vo); +int vo_cocoa_control(struct vo *vo, int *events, int request, void *arg); void vo_cocoa_register_resize_callback(struct vo *vo, void (*cb)(struct vo *vo, int w, int h)); -- cgit v1.2.3