• Olivier Fourdan's avatar
    xwayland: Add buffer release callback · 77658741
    Olivier Fourdan authored
    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's avatarOlivier Fourdan <ofourdan@redhat.com>
    Reviewed-by: Michel Dänzer's avatarMichel Dänzer <mdaenzer@redhat.com>