sway

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

commit 897e7688bb415c40f8bc104bd526ddba537255f1
parent 842ea067737934823ccdef9adb8fbec6481bc472
Author: johnpyp <johnpyp.dev@gmail.com>
Date:   Mon, 17 Nov 2025 21:29:49 -0500

commit dirty transactions upon window attribute changes

Diffstat:
Msway/desktop/xdg_shell.c | 3+++
Msway/desktop/xwayland.c | 4++++
2 files changed, 7 insertions(+), 0 deletions(-)

diff --git a/sway/desktop/xdg_shell.c b/sway/desktop/xdg_shell.c @@ -354,6 +354,7 @@ static void handle_set_title(struct wl_listener *listener, void *data) { struct sway_view *view = &xdg_shell_view->view; view_update_title(view, false); view_execute_criteria(view); + transaction_commit_dirty(); } static void handle_set_app_id(struct wl_listener *listener, void *data) { @@ -362,6 +363,7 @@ static void handle_set_app_id(struct wl_listener *listener, void *data) { struct sway_view *view = &xdg_shell_view->view; view_update_app_id(view); view_execute_criteria(view); + transaction_commit_dirty(); } static void handle_new_popup(struct wl_listener *listener, void *data) { @@ -594,4 +596,5 @@ void xdg_toplevel_tag_manager_v1_handle_set_tag(struct wl_listener *listener, vo free(xdg_shell_view->tag); xdg_shell_view->tag = strdup(event->tag); view_execute_criteria(view); + transaction_commit_dirty(); } diff --git a/sway/desktop/xwayland.c b/sway/desktop/xwayland.c @@ -689,6 +689,7 @@ static void handle_set_title(struct wl_listener *listener, void *data) { } view_update_title(view, false); view_execute_criteria(view); + transaction_commit_dirty(); } static void handle_set_class(struct wl_listener *listener, void *data) { @@ -700,6 +701,7 @@ static void handle_set_class(struct wl_listener *listener, void *data) { return; } view_execute_criteria(view); + transaction_commit_dirty(); } static void handle_set_role(struct wl_listener *listener, void *data) { @@ -711,6 +713,7 @@ static void handle_set_role(struct wl_listener *listener, void *data) { return; } view_execute_criteria(view); + transaction_commit_dirty(); } static void handle_set_startup_id(struct wl_listener *listener, void *data) { @@ -747,6 +750,7 @@ static void handle_set_window_type(struct wl_listener *listener, void *data) { return; } view_execute_criteria(view); + transaction_commit_dirty(); } static void handle_set_hints(struct wl_listener *listener, void *data) {