From fbabb105c3427fbbce4dfc3ea9701ba473298206 Mon Sep 17 00:00:00 2001 From: vaxerski <43317083+vaxerski@users.noreply.github.com> Date: Wed, 14 Jun 2023 13:26:47 +0200 Subject: gamma: use wlr's new gamma manager event --- src/events/Misc.cpp | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'src/events/Misc.cpp') diff --git a/src/events/Misc.cpp b/src/events/Misc.cpp index a360090f..da680a00 100644 --- a/src/events/Misc.cpp +++ b/src/events/Misc.cpp @@ -214,3 +214,20 @@ void Events::listener_newSessionLock(wl_listener* listener, void* data) { g_pSessionLockManager->onNewSessionLock((wlr_session_lock_v1*)data); } + +void Events::listener_setGamma(wl_listener* listener, void* data) { + Debug::log(LOG, "New Gamma event at %lx", data); + + const auto E = (wlr_gamma_control_manager_v1_set_gamma_event*)data; + + const auto PMONITOR = g_pCompositor->getMonitorFromOutput(E->output); + + if (!PMONITOR) { + Debug::log(ERR, "Gamma event object references non-existent output %lx ?", E->output); + return; + } + + PMONITOR->gammaChanged = true; + + g_pCompositor->scheduleFrameForMonitor(PMONITOR); +} -- cgit v1.2.3