summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorvaxerski <43317083+vaxerski@users.noreply.github.com>2022-07-31 16:54:36 +0200
committervaxerski <43317083+vaxerski@users.noreply.github.com>2022-07-31 16:54:36 +0200
commite95aa8ef267cfa9df4bba2d477e6bda89bfda8f5 (patch)
treeabf252d938ef34f6240ff39af8df6b9b6b262e40
parenta1d1ec4c4696b5e44c7d7135c4191aa795811bee (diff)
minor fixes to render loop
-rw-r--r--src/events/Monitors.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/events/Monitors.cpp b/src/events/Monitors.cpp
index 770f42b0..b8b5859e 100644
--- a/src/events/Monitors.cpp
+++ b/src/events/Monitors.cpp
@@ -98,6 +98,9 @@ void Events::listener_monitorFrame(void* owner, void* data) {
static int damageBlinkCleanup = 0; // because double-buffered
+ if (!*PDAMAGEBLINK)
+ damageBlinkCleanup = 0;
+
if (*PDEBUGOVERLAY == 1) {
startRender = std::chrono::high_resolution_clock::now();
g_pDebugOverlay->frameData(PMONITOR);
@@ -112,6 +115,9 @@ void Events::listener_monitorFrame(void* owner, void* data) {
Debug::log(LOG, "NoFrameSchedule hit for %s.", PMONITOR->szName.c_str());
}
g_pLayoutManager->getCurrentLayout()->recalculateMonitor(PMONITOR->ID);
+
+ if (PMONITOR->framesToSkip > 10)
+ PMONITOR->framesToSkip = 0;
return;
}
@@ -189,8 +195,12 @@ void Events::listener_monitorFrame(void* owner, void* data) {
}
}
- if (PMONITOR->forceFullFrames > 0)
+ if (PMONITOR->forceFullFrames > 0) {
PMONITOR->forceFullFrames -= 1;
+ if (PMONITOR->forceFullFrames > 10)
+ PMONITOR->forceFullFrames = 0;
+ }
+
// TODO: this is getting called with extents being 0,0,0,0 should it be?
// potentially can save on resources.