Skip to content

Draft: wlr_scene: Add software fallback for gamma lut

Last commit is RFC because we need some discussions about that @emersion do you have any idea how you would like that done?

Test with tinywl:

diff --git a/tinywl/tinywl.c b/tinywl/tinywl.c
index edc6269b3..4974b4af1 100644
--- a/tinywl/tinywl.c
+++ b/tinywl/tinywl.c
@@ -25,6 +25,8 @@
 #include <wlr/util/log.h>
 #include <xkbcommon/xkbcommon.h>
 
+#include <wlr/types/wlr_gamma_control_v1.h>
+
 /* For brevity's sake, struct members are annotated where they are used. */
 enum tinywl_cursor_mode {
 	TINYWL_CURSOR_PASSTHROUGH,
@@ -963,6 +965,8 @@ int main(int argc, char *argv[]) {
 	server.scene = wlr_scene_create();
 	server.scene_layout = wlr_scene_attach_output_layout(server.scene, server.output_layout);
 
+	wlr_scene_set_gamma_control_manager_v1(server.scene, wlr_gamma_control_manager_v1_create(server.wl_display));
+
 	/* Set up xdg-shell version 3. The xdg-shell is a Wayland protocol which is
 	 * used for application windows. For more detail on shells, refer to
 	 * https://drewdevault.com/2018/07/29/Wayland-shells.html.

Merge request reports

Loading