aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Ser <contact@emersion.fr>2023-10-05 10:41:15 +0200
committerSimon Ser <contact@emersion.fr>2023-11-21 15:05:58 +0100
commit5bdd6085148d8eddf0ae8f9a25ec32eb5bfd48ad (patch)
tree790c700df9691ba9ab7336d3ea26a4501205d9f4
parent86f96a786bac957f5195e894c94b1ce7eb93ef09 (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) {