summaryrefslogtreecommitdiff
path: root/src/events/Monitors.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/events/Monitors.cpp')
-rw-r--r--src/events/Monitors.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/events/Monitors.cpp b/src/events/Monitors.cpp
index 0db620fc..661babeb 100644
--- a/src/events/Monitors.cpp
+++ b/src/events/Monitors.cpp
@@ -180,9 +180,14 @@ void Events::listener_monitorFrame(void* owner, void* data) {
g_pConfigManager->performMonitorReload();
}
- if (PMONITOR->needsFrameSkip) {
- PMONITOR->needsFrameSkip = false;
- wlr_output_schedule_frame(PMONITOR->output);
+ if (PMONITOR->framesToSkip > 0) {
+ PMONITOR->framesToSkip -= 1;
+
+ if (!PMONITOR->noFrameSchedule)
+ wlr_output_schedule_frame(PMONITOR->output);
+ else {
+ Debug::log(LOG, "NoFrameSchedule hit for %s.", PMONITOR->szName.c_str());
+ }
g_pLayoutManager->getCurrentLayout()->recalculateMonitor(PMONITOR->ID);
return;
}