xserver/hw/xwayland
Olivier Fourdan 7765874186 xwayland: Add buffer release callback
The API `wl_buffer_add_listener` is misleading in the sense that there
can be only one `wl_buffer` release callback, and trying to add a new
listener when once is already in place will lead to a protocol error.

The Xwayland EGL backends may need to set up their own `wl_buffer`
release listener, meaning that there is no way to our own `wl_buffer`
release callback.

To avoid the problem, add our own callback API to be notified when the
`wl_buffer` associated with an `xwl_pixmap` is released, triggered from
the different `xwl_pixmap` implementations.

Also update the Present code to use the new buffer release callback API.

Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
2019-11-28 17:32:44 +01:00
..
.gitignore xwayland: Add wp_viewport wayland extension support 2019-10-12 12:19:14 +02:00
Makefile.am xwayland: Add wp_viewport wayland extension support 2019-10-12 12:19:14 +02:00
drm.xml wayland: Sync drm.xml with Mesa 2017-07-05 10:13:04 -04:00
meson.build xwayland: Add wp_viewport wayland extension support 2019-10-12 12:19:14 +02:00
xwayland-cursor.c xwayland: Use buffer_damage instead of surface damage if available 2019-10-12 12:19:14 +02:00
xwayland-cvt.c xwayland: Add hack for FWXGA resolution #99574 2017-02-08 12:32:16 -05:00
xwayland-glamor-eglstream.c xwayland: Add buffer release callback 2019-11-28 17:32:44 +01:00
xwayland-glamor-gbm.c xwayland: Add buffer release callback 2019-11-28 17:32:44 +01:00
xwayland-glamor-xv.c xwayland: use the lowercase xnf.*alloc API 2017-09-06 08:56:39 +10:00
xwayland-glamor.c glamor/xwayland: Define EGL_NO_X11 2019-11-04 20:49:33 +01:00
xwayland-glx.c glamor/xwayland: Define EGL_NO_X11 2019-11-04 20:49:33 +01:00
xwayland-input.c xwayland: Add support for randr-resolution change emulation using viewport 2019-10-12 12:19:14 +02:00
xwayland-output.c xserver: Fix a typo 2019-10-16 18:57:31 +00:00
xwayland-present.c xwayland: Add buffer release callback 2019-11-28 17:32:44 +01:00
xwayland-shm.c xwayland: Add buffer release callback 2019-11-28 17:32:44 +01:00
xwayland-vidmode.c xwayland: Add vidmode mode changing emulation support 2019-10-12 12:19:14 +02:00
xwayland.c xwayland: Add buffer release callback 2019-11-28 17:32:44 +01:00
xwayland.h xwayland: Add buffer release callback 2019-11-28 17:32:44 +01:00