adds remote argument to wayland backend create
Add a remote display name argument to wlr_wl_backend_create. If NULL is passed to the wayland backend at all times, creating a wayland backend *after* the compositor was started up, would require changing the WAYLAND_DISPLAY environment variable.
This commit is contained in:
parent
03faf17942
commit
c00e9d1416
|
@ -53,7 +53,7 @@ struct wlr_egl *wlr_backend_get_egl(struct wlr_backend *backend) {
|
||||||
}
|
}
|
||||||
|
|
||||||
static struct wlr_backend *attempt_wl_backend(struct wl_display *display) {
|
static struct wlr_backend *attempt_wl_backend(struct wl_display *display) {
|
||||||
struct wlr_backend *backend = wlr_wl_backend_create(display);
|
struct wlr_backend *backend = wlr_wl_backend_create(display, NULL);
|
||||||
if (backend) {
|
if (backend) {
|
||||||
int outputs = 1;
|
int outputs = 1;
|
||||||
const char *_outputs = getenv("WLR_WL_OUTPUTS");
|
const char *_outputs = getenv("WLR_WL_OUTPUTS");
|
||||||
|
|
|
@ -158,7 +158,7 @@ static void handle_display_destroy(struct wl_listener *listener, void *data) {
|
||||||
wlr_wl_backend_destroy(&backend->backend);
|
wlr_wl_backend_destroy(&backend->backend);
|
||||||
}
|
}
|
||||||
|
|
||||||
struct wlr_backend *wlr_wl_backend_create(struct wl_display *display) {
|
struct wlr_backend *wlr_wl_backend_create(struct wl_display *display, const char *remote) {
|
||||||
wlr_log(L_INFO, "Creating wayland backend");
|
wlr_log(L_INFO, "Creating wayland backend");
|
||||||
|
|
||||||
struct wlr_wl_backend *backend = calloc(1, sizeof(struct wlr_wl_backend));
|
struct wlr_wl_backend *backend = calloc(1, sizeof(struct wlr_wl_backend));
|
||||||
|
@ -173,7 +173,7 @@ struct wlr_backend *wlr_wl_backend_create(struct wl_display *display) {
|
||||||
|
|
||||||
backend->local_display = display;
|
backend->local_display = display;
|
||||||
|
|
||||||
backend->remote_display = wl_display_connect(NULL);
|
backend->remote_display = wl_display_connect(remote);
|
||||||
if (!backend->remote_display) {
|
if (!backend->remote_display) {
|
||||||
wlr_log_errno(L_ERROR, "Could not connect to remote display");
|
wlr_log_errno(L_ERROR, "Could not connect to remote display");
|
||||||
return false;
|
return false;
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
* Creates a new wlr_wl_backend. This backend will be created with no outputs;
|
* Creates a new wlr_wl_backend. This backend will be created with no outputs;
|
||||||
* you must use wlr_wl_output_create to add them.
|
* you must use wlr_wl_output_create to add them.
|
||||||
*/
|
*/
|
||||||
struct wlr_backend *wlr_wl_backend_create(struct wl_display *display);
|
struct wlr_backend *wlr_wl_backend_create(struct wl_display *display, const char *remote);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adds a new output to this backend. You may remove outputs by destroying them.
|
* Adds a new output to this backend. You may remove outputs by destroying them.
|
||||||
|
|
Loading…
Reference in New Issue