mirror of
https://github.com/mpv-player/mpv
synced 2025-02-12 09:57:15 +00:00
wayland: print waylands display erros
This is very usefull especially if you want to use newer wayland stuff like wl_subsurfaces and xdg_surfaces.
This commit is contained in:
parent
bf90317ad1
commit
6e34b0ec1f
@ -111,6 +111,44 @@ static const struct mp_keymap keymap[] = {
|
||||
|
||||
|
||||
/** Wayland listeners **/
|
||||
|
||||
static void display_handle_error(void *data,
|
||||
struct wl_display *display,
|
||||
void *object_id,
|
||||
uint32_t code,
|
||||
const char *message)
|
||||
{
|
||||
struct vo_wayland_state *wl = data;
|
||||
const char * error_type_msg = "";
|
||||
|
||||
switch (code) {
|
||||
case WL_DISPLAY_ERROR_INVALID_OBJECT:
|
||||
error_type_msg = "Invalid object";
|
||||
break;
|
||||
case WL_DISPLAY_ERROR_INVALID_METHOD:
|
||||
error_type_msg = "Invalid method";
|
||||
break;
|
||||
case WL_DISPLAY_ERROR_NO_MEMORY:
|
||||
error_type_msg = "No memory";
|
||||
break;
|
||||
}
|
||||
|
||||
MP_ERR(wl, "%s: %s\n", error_type_msg, message);
|
||||
}
|
||||
|
||||
static void display_handle_delete_id(void *data,
|
||||
struct wl_display *display,
|
||||
uint32_t id)
|
||||
{
|
||||
struct vo_wayland_state *wl = data;
|
||||
MP_DBG(wl, "Object %u deleted\n", id);
|
||||
}
|
||||
|
||||
const struct wl_display_listener display_listener = {
|
||||
display_handle_error,
|
||||
display_handle_delete_id
|
||||
};
|
||||
|
||||
static void ssurface_handle_ping(void *data,
|
||||
struct wl_shell_surface *shell_surface,
|
||||
uint32_t serial)
|
||||
@ -606,6 +644,8 @@ static bool create_display (struct vo_wayland_state *wl)
|
||||
return false;
|
||||
}
|
||||
|
||||
wl_display_add_listener(wl->display.display, &display_listener, wl);
|
||||
|
||||
wl_list_init(&wl->display.output_list);
|
||||
wl->display.registry = wl_display_get_registry(wl->display.display);
|
||||
wl_registry_add_listener(wl->display.registry, ®istry_listener, wl);
|
||||
|
Loading…
Reference in New Issue
Block a user