summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFurkan Sahin <furkan-dev@proton.me>2023-10-05 10:41:15 +0200
committerFurkan Sahin <furkan-dev@proton.me>2023-10-05 10:41:15 +0200
commit24a4e2d9f771fef559f8c4871c899c766596d705 (patch)
tree790c700df9691ba9ab7336d3ea26a4501205d9f4
parent6e708ca44bbe91c5592f83cd31eabb56157ac044 (diff)
Apply gamma LUT when an output re-enabled
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3679
-rw-r--r--sway/desktop/output.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/sway/desktop/output.c b/sway/desktop/output.c
index f2bc4a67..53730073 100644
--- a/sway/desktop/output.c
+++ b/sway/desktop/output.c
@@ -964,6 +964,11 @@ static void handle_commit(struct wl_listener *listener, void *data) {
wlr_damage_ring_set_bounds(&output->damage_ring, width, height);
wlr_output_schedule_frame(output->wlr_output);
}
+
+ // Next time the output is enabled, try to re-apply the gamma LUT
+ if ((event->committed & WLR_OUTPUT_STATE_ENABLED) && !output->wlr_output->enabled) {
+ output->gamma_lut_changed = true;
+ }
}
static void handle_present(struct wl_listener *listener, void *data) {