3
0
mirror of https://github.com/hyprwm/Hyprland.git synced 2026-08-18 02:51:23 +00:00

committiming: release for intersected monitors (#15744)

some clients never binds an output, so check for intersection like fifo
does aswell.
This commit is contained in:
Tom Englund
2026-08-04 22:14:24 +02:00
committed by GitHub
parent ea95499cd7
commit 10d320fde6

View File

@ -155,10 +155,17 @@ void CCommitTimingProtocol::onMonitorPresent(PHLMONITOR m, const Time::steady_tp
continue;
const auto& OUTPUTS = timer->m_surface->m_enteredOutputs;
if (OUTPUTS.size() != 1 || OUTPUTS[0] != m)
if (std::ranges::find(OUTPUTS, m) != OUTPUTS.end()) {
timer->releaseDueStates(UPCOMING_FLIP);
continue;
}
if (!OUTPUTS.empty() || !timer->m_surface->m_hlSurface)
continue;
timer->releaseDueStates(UPCOMING_FLIP);
const auto BOX = timer->m_surface->m_hlSurface->getSurfaceBoxGlobal();
if (BOX && !BOX->intersection({m->position(), m->m_size}).empty())
timer->releaseDueStates(UPCOMING_FLIP);
}
}