From e0895e097bcf15cdabc93f340dae24a88b0dc89c Mon Sep 17 00:00:00 2001 From: dudemanguy Date: Mon, 7 Oct 2019 07:48:34 -0500 Subject: Revert "vo: add support for externally driven renderloop and make wayland use it" The externally driven renderloop was originally added for the wayland context (to make display sync somewhat work), but it has a lot of issues with mpv's internal structure. A different approach should be used. This reverts commit a743fef837bcab206b1e576db7e7a64b02890449. --- video/out/wayland_common.c | 15 --------------- 1 file changed, 15 deletions(-) (limited to 'video/out/wayland_common.c') diff --git a/video/out/wayland_common.c b/video/out/wayland_common.c index a70377f3c6..cc07296a43 100644 --- a/video/out/wayland_common.c +++ b/video/out/wayland_common.c @@ -807,9 +807,6 @@ static void frame_callback(void *data, struct wl_callback *callback, uint32_t ti wl->frame_callback = wl_surface_frame(wl->surface); wl_callback_add_listener(wl->frame_callback, &frame_listener, wl); - - if (!vo_render_frame_external(wl->vo)) - wl_surface_commit(wl->surface); } static const struct wl_callback_listener frame_listener = { @@ -827,7 +824,6 @@ static void registry_handle_add(void *data, struct wl_registry *reg, uint32_t id wl->surface = wl_compositor_create_surface(wl->compositor); wl->cursor_surface = wl_compositor_create_surface(wl->compositor); wl_surface_add_listener(wl->surface, &surface_listener, wl); - vo_enable_external_renderloop(wl->vo); wl->frame_callback = wl_surface_frame(wl->surface); wl_callback_add_listener(wl->frame_callback, &frame_listener, wl); } @@ -1386,17 +1382,6 @@ int vo_wayland_control(struct vo *vo, int *events, int request, void *arg) *(char ***)arg = get_displays_spanned(wl); return VO_TRUE; } - case VOCTRL_PAUSE: { - wl_callback_destroy(wl->frame_callback); - wl->frame_callback = NULL; - vo_disable_external_renderloop(wl->vo); - return VO_TRUE; - } - case VOCTRL_RESUME: { - vo_enable_external_renderloop(wl->vo); - frame_callback(wl, NULL, 0); - return VO_TRUE; - } case VOCTRL_GET_UNFS_WINDOW_SIZE: { int *s = arg; s[0] = mp_rect_w(wl->geometry)*wl->scaling; -- cgit v1.2.3