diff --git a/hw/xwayland/xwayland-output.c b/hw/xwayland/xwayland-output.c index 3d9ef3677a3d9c0904dc380a43db2a83c1775240..39434b5ec6721871a26a3e13e7a427e3bba670eb 100644 --- a/hw/xwayland/xwayland-output.c +++ b/hw/xwayland/xwayland-output.c @@ -752,6 +752,20 @@ xwl_output_set_emulated(struct xwl_output *xwl_output) &val, FALSE, FALSE); } +struct xwl_output* +xwl_output_from_wl_output(struct xwl_screen *xwl_screen, + struct wl_output* wl_output) +{ + struct xwl_output *xwl_output; + + xorg_list_for_each_entry(xwl_output, &xwl_screen->output_list, link) { + if (xwl_output->output == wl_output) + return xwl_output; + } + + return NULL; +} + struct xwl_output * xwl_output_create(struct xwl_screen *xwl_screen, uint32_t id, Bool with_xrandr) { diff --git a/hw/xwayland/xwayland-output.h b/hw/xwayland/xwayland-output.h index 63aee82444882788739b5aaa4e67fb3d3e9f2f93..603b54527a53a0429b87af7029dc92aa3d597c2a 100644 --- a/hw/xwayland/xwayland-output.h +++ b/hw/xwayland/xwayland-output.h @@ -79,6 +79,9 @@ Bool xwl_screen_init_randr_fixed(struct xwl_screen *xwl_screen); void xwl_output_set_mode_fixed(struct xwl_output *xwl_output, RRModePtr mode); +struct xwl_output *xwl_output_from_wl_output(struct xwl_screen *xwl_screen, + struct wl_output* wl_output); + struct xwl_output *xwl_output_create(struct xwl_screen *xwl_screen, uint32_t id, Bool with_xrandr);