diff options
author | Drew DeVault <sir@cmpwn.com> | 2018-07-30 08:05:14 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-07-30 08:05:14 -0400 |
commit | 5f8676f21478a05c349f0222755e999e2f457acc (patch) | |
tree | f1758d634c85ac5772e26d91078e892e596a6c40 | |
parent | 8dacd0639cb68675f7fd6fb762a0f71dc6148cb7 (diff) | |
parent | b8efdeae298d59bf7015a9821e3d29cc4e9852e1 (diff) |
Merge pull request #2383 from RedSoxFan/fix-title-scale
Fix title textures on scale change
-rw-r--r-- | include/sway/tree/container.h | 2 | ||||
-rw-r--r-- | sway/desktop/output.c | 6 | ||||
-rw-r--r-- | sway/tree/container.c | 6 |
3 files changed, 8 insertions, 6 deletions
diff --git a/include/sway/tree/container.h b/include/sway/tree/container.h index d91b3bf1..d4a42a71 100644 --- a/include/sway/tree/container.h +++ b/include/sway/tree/container.h @@ -270,6 +270,8 @@ int container_count_descendants_of_type(struct sway_container *con, void container_create_notify(struct sway_container *container); +void container_update_textures_recursive(struct sway_container *con); + void container_damage_whole(struct sway_container *container); bool container_reap_empty(struct sway_container *con); diff --git a/sway/desktop/output.c b/sway/desktop/output.c index cecd300a..fb52e7b1 100644 --- a/sway/desktop/output.c +++ b/sway/desktop/output.c @@ -506,14 +506,10 @@ static void handle_transform(struct wl_listener *listener, void *data) { transaction_commit_dirty(); } -static void handle_scale_iterator(struct sway_container *view, void *data) { - view_update_marks_textures(view->sway_view); -} - static void handle_scale(struct wl_listener *listener, void *data) { struct sway_output *output = wl_container_of(listener, output, scale); arrange_layers(output); - container_descendants(output->swayc, C_VIEW, handle_scale_iterator, NULL); + container_update_textures_recursive(output->swayc); arrange_windows(output->swayc); transaction_commit_dirty(); } diff --git a/sway/tree/container.c b/sway/tree/container.c index b7442002..4e85021d 100644 --- a/sway/tree/container.c +++ b/sway/tree/container.c @@ -67,7 +67,7 @@ void container_create_notify(struct sway_container *container) { } } -static void container_update_textures_recursive(struct sway_container *con) { +void container_update_textures_recursive(struct sway_container *con) { if (con->type == C_CONTAINER || con->type == C_VIEW) { container_update_title_textures(con); } @@ -79,6 +79,10 @@ static void container_update_textures_recursive(struct sway_container *con) { struct sway_container *child = con->children->items[i]; container_update_textures_recursive(child); } + + if (con->type == C_WORKSPACE) { + container_update_textures_recursive(con->sway_workspace->floating); + } } } |