move no_vfr to vfr and add vrr

This commit is contained in:
vaxerski 2023-02-14 17:08:42 +00:00
parent 98c95aa34d
commit 127e80692f
3 changed files with 54 additions and 25 deletions

View file

@ -120,6 +120,7 @@ void Events::listener_monitorFrame(void* owner, void* data) {
static auto* const PDAMAGETRACKINGMODE = &g_pConfigManager->getConfigValuePtr("debug:damage_tracking")->intValue;
static auto* const PDAMAGEBLINK = &g_pConfigManager->getConfigValuePtr("debug:damage_blink")->intValue;
static auto* const PNODIRECTSCANOUT = &g_pConfigManager->getConfigValuePtr("misc:no_direct_scanout")->intValue;
static auto* const PVFR = &g_pConfigManager->getConfigValuePtr("misc:vfr")->intValue;
static int damageBlinkCleanup = 0; // because double-buffered
@ -148,8 +149,7 @@ void Events::listener_monitorFrame(void* owner, void* data) {
// checks //
if (PMONITOR->ID == g_pHyprRenderer->m_pMostHzMonitor->ID ||
g_pHyprRenderer->m_pMostHzMonitor->output->adaptive_sync_status ==
WLR_OUTPUT_ADAPTIVE_SYNC_ENABLED) { // unfortunately with VFR we don't have the guarantee mostHz is going to be updated all the time, so we have to ignore that
*PVFR == 1) { // unfortunately with VFR we don't have the guarantee mostHz is going to be updated all the time, so we have to ignore that
g_pCompositor->sanityCheckWorkspaces();
g_pAnimationManager->tick();
@ -204,7 +204,7 @@ void Events::listener_monitorFrame(void* owner, void* data) {
pixman_region32_fini(&damage);
wlr_output_rollback(PMONITOR->output);
if (*PDAMAGEBLINK || PMONITOR->output->adaptive_sync_status == WLR_OUTPUT_ADAPTIVE_SYNC_DISABLED)
if (*PDAMAGEBLINK || *PVFR == 0)
g_pCompositor->scheduleFrameForMonitor(PMONITOR);
return;
@ -311,7 +311,7 @@ void Events::listener_monitorFrame(void* owner, void* data) {
if (!wlr_output_commit(PMONITOR->output))
return;
if (*PDAMAGEBLINK || PMONITOR->output->adaptive_sync_status == WLR_OUTPUT_ADAPTIVE_SYNC_DISABLED)
if (*PDAMAGEBLINK || *PVFR == 0)
g_pCompositor->scheduleFrameForMonitor(PMONITOR);
if (*PDEBUGOVERLAY == 1) {