From edf0e49195d1dced5d65a7fb43bd17b8a5e59c18 Mon Sep 17 00:00:00 2001 From: Jente Hidskes Date: Sun, 20 Jan 2019 16:21:04 +0100 Subject: [PATCH] Add wlr_x11_output_set_title --- backend/x11/output.c | 12 +++++++++--- include/wlr/backend/x11.h | 5 +++++ 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/backend/x11/output.c b/backend/x11/output.c index 6f98c590..9c55b154 100644 --- a/backend/x11/output.c +++ b/backend/x11/output.c @@ -187,9 +187,7 @@ struct wlr_output *wlr_x11_output_create(struct wlr_backend *backend) { char title[32]; if (snprintf(title, sizeof(title), "wlroots - %s", wlr_output->name)) { - xcb_change_property(x11->xcb, XCB_PROP_MODE_REPLACE, output->win, - x11->atoms.net_wm_name, x11->atoms.utf8_string, 8, - strlen(title), title); + wlr_x11_output_set_title(wlr_output, title); } xcb_map_window(x11->xcb, output->win); @@ -234,3 +232,11 @@ void handle_x11_configure_notify(struct wlr_x11_output *output, bool wlr_output_is_x11(struct wlr_output *wlr_output) { return wlr_output->impl == &output_impl; } + +void wlr_x11_output_set_title(struct wlr_output *output, const char *title) { + struct wlr_x11_output *x11_output = get_x11_output_from_output(output); + + xcb_change_property(x11_output->x11->xcb, XCB_PROP_MODE_REPLACE, x11_output->win, + x11_output->x11->atoms.net_wm_name, x11_output->x11->atoms.utf8_string, 8, + strlen(title), title); +} diff --git a/include/wlr/backend/x11.h b/include/wlr/backend/x11.h index 9b2704e7..9be976b2 100644 --- a/include/wlr/backend/x11.h +++ b/include/wlr/backend/x11.h @@ -42,4 +42,9 @@ bool wlr_input_device_is_x11(struct wlr_input_device *device); */ bool wlr_output_is_x11(struct wlr_output *output); +/** + * Sets the title of a wlr_output which is an X11 window. + */ +void wlr_x11_output_set_title(struct wlr_output *output, const char *title); + #endif