summaryrefslogtreecommitdiff
path: root/src/events/Misc.cpp
diff options
context:
space:
mode:
authorVaxry <vaxry@vaxry.net>2024-01-27 13:58:13 +0000
committerVaxry <vaxry@vaxry.net>2024-01-27 13:58:28 +0000
commit7b3d03938888f399c3c14adfce73ea22bbe461ea (patch)
tree871448bf8b8b3a942629793af27132686247a3ed /src/events/Misc.cpp
parent12d79d63421e2ed3f31130755c7a37f0e4fb5cb1 (diff)
deps: update wlroots
drops requirement for WLR_DRM_NO_ATOMIC provided kernel >= 6.8
Diffstat (limited to 'src/events/Misc.cpp')
-rw-r--r--src/events/Misc.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/events/Misc.cpp b/src/events/Misc.cpp
index 6b77d9c5..b186236a 100644
--- a/src/events/Misc.cpp
+++ b/src/events/Misc.cpp
@@ -175,11 +175,17 @@ void Events::listener_sessionActive(wl_listener* listener, void* data) {
void Events::listener_powerMgrSetMode(wl_listener* listener, void* data) {
Debug::log(LOG, "PowerMgr set mode!");
- const auto EVENT = (wlr_output_power_v1_set_mode_event*)data;
+ const auto EVENT = (wlr_output_power_v1_set_mode_event*)data;
+ const auto PMONITOR = g_pCompositor->getMonitorFromOutput(EVENT->output);
- wlr_output_enable(EVENT->output, EVENT->mode == 1);
+ if (!PMONITOR) {
+ Debug::log(ERR, "Invalid powerMgrSetMode output");
+ return;
+ }
+
+ wlr_output_state_set_enabled(&PMONITOR->outputState, EVENT->mode == 1);
- if (!wlr_output_commit(EVENT->output))
+ if (!wlr_output_commit_state(EVENT->output, &PMONITOR->outputState))
Debug::log(ERR, "Couldn't set power mode");
}