sway

i3-compatible Wayland compositor
git clone https://git.awy.one/sway
Log | Files | Refs | README | LICENSE

commit 128b6253a924c30e8e4fd1f09ce19e21a826c5ad
parent fd6d6f1d97deea2fc94aaeb58c85c99a498d905b
Author: Simon Ser <contact@emersion.fr>
Date:   Thu, 23 Nov 2023 13:08:53 +0100

Pass wl_display to wlr_output_layout

References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4310

Diffstat:
Minclude/sway/tree/root.h | 2+-
Msway/main.c | 2--
Msway/server.c | 2++
Msway/tree/root.c | 4++--
4 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/include/sway/tree/root.h b/include/sway/tree/root.h @@ -41,7 +41,7 @@ struct sway_root { } events; }; -struct sway_root *root_create(void); +struct sway_root *root_create(struct wl_display *display); void root_destroy(struct sway_root *root); diff --git a/sway/main.c b/sway/main.c @@ -375,8 +375,6 @@ int main(int argc, char **argv) { sway_log(SWAY_INFO, "Starting sway version " SWAY_VERSION); - root = root_create(); - if (!server_init(&server)) { return 1; } diff --git a/sway/server.c b/sway/server.c @@ -120,6 +120,8 @@ bool server_init(struct sway_server *server) { wl_display_set_global_filter(server->wl_display, filter_global, NULL); + root = root_create(server->wl_display); + server->backend = wlr_backend_autocreate(server->wl_display, &server->session); if (!server->backend) { sway_log(SWAY_ERROR, "Unable to create backend"); diff --git a/sway/tree/root.c b/sway/tree/root.c @@ -24,14 +24,14 @@ static void output_layout_handle_change(struct wl_listener *listener, transaction_commit_dirty(); } -struct sway_root *root_create(void) { +struct sway_root *root_create(struct wl_display *wl_display) { struct sway_root *root = calloc(1, sizeof(struct sway_root)); if (!root) { sway_log(SWAY_ERROR, "Unable to allocate sway_root"); return NULL; } node_init(&root->node, N_ROOT, root); - root->output_layout = wlr_output_layout_create(); + root->output_layout = wlr_output_layout_create(wl_display); wl_list_init(&root->all_outputs); #if HAVE_XWAYLAND wl_list_init(&root->xwayland_unmanaged);