Set color transform when calling wlr_scene_output_build_state()

We were only passing the color transform when calling
wlr_scene_output_commit(). However when modesetting or pushing a
new gamma LUT we render via wlr_scene_output_build_state(). Pass
the color transform there as well.
This commit is contained in:
Simon Ser 2024-06-08 11:28:42 +02:00 committed by Kenny Levinsen
parent 40ca4150b2
commit cc34210769
2 changed files with 6 additions and 4 deletions

View file

@ -243,10 +243,14 @@ static int output_repaint_timer_handler(void *data) {
output_configure_scene(output, &root->root_scene->tree.node, 1.0f);
struct wlr_scene_output_state_options opts = {
.color_transform = output->color_transform,
};
if (output->gamma_lut_changed) {
struct wlr_output_state pending;
wlr_output_state_init(&pending);
if (!wlr_scene_output_build_state(output->scene_output, &pending, NULL)) {
if (!wlr_scene_output_build_state(output->scene_output, &pending, &opts)) {
return 0;
}
@ -269,9 +273,6 @@ static int output_repaint_timer_handler(void *data) {
return 0;
}
struct wlr_scene_output_state_options opts = {
.color_transform = output->color_transform,
};
wlr_scene_output_commit(output->scene_output, &opts);
return 0;
}