Make Xwayland startup asynchronous
The startup of Xwayland so far is artificially made to be synchronous. It's either called from meta_init()
, and made so the meta_display_open()
call happening afterwards is ensured to have the X11 display server running, or called at a later point in time with Xwayland on demand, when we (presumably!) will have a MetaDisplay around.
This MR changes this so 1) we turn Xwayland startup into an asynchronous operation in API and 2) meta_display_init_x11()
stands the high level entrypoint that will set up a X server for you if necessary, moving things out of meta_init()
.
The X11 backend can proceed directly at getting a MetaX11Display at meta_display_open()
time, and will definitely need it, so it takes a shortcut instead.