From 7fab75a7a6d9b2cccfec7741cc59c705b3c40f15 Mon Sep 17 00:00:00 2001 From: Alexander Orzechowski Date: Tue, 18 Feb 2025 12:41:22 -0500 Subject: [PATCH] commands/opacity: Call output_configure_scene on updated container Calling container_update() wasn't enough: If there is no visible window decorations (title bar, borders) container_update would basically no-op and the scene wouldn't repaint with the update alpha. By also calling output_configure_scene() we force a call to wlr_scene_buffer_set_opacity() thus ensuring we update the scene. Closes: #8580 --- sway/commands/opacity.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sway/commands/opacity.c b/sway/commands/opacity.c index 610cecc6d..de058c6b8 100644 --- a/sway/commands/opacity.c +++ b/sway/commands/opacity.c @@ -2,7 +2,8 @@ #include #include #include "sway/commands.h" -#include "sway/tree/view.h" +#include "sway/tree/container.h" +#include "sway/output.h" #include "log.h" struct cmd_results *cmd_opacity(int argc, char **argv) { @@ -37,6 +38,7 @@ struct cmd_results *cmd_opacity(int argc, char **argv) { } con->alpha = val; + output_configure_scene(NULL, &con->scene_tree->node, 1); container_update(con); return cmd_results_new(CMD_SUCCESS, NULL);