mirror of
https://github.com/hyprwm/Hyprland
synced 2024-11-26 07:45:59 +01:00
window: ignore surface updates in unsafe / on invalid monitors
This commit is contained in:
parent
31e1287da2
commit
05dd204c5f
1 changed files with 4 additions and 1 deletions
|
@ -336,7 +336,7 @@ void sendLeaveIter(wlr_surface* pSurface, int x, int y, void* data) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void CWindow::updateSurfaceScaleTransformDetails() {
|
void CWindow::updateSurfaceScaleTransformDetails() {
|
||||||
if (!m_bIsMapped || m_bHidden)
|
if (!m_bIsMapped || m_bHidden || g_pCompositor->m_bUnsafeState)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
const auto PLASTMONITOR = g_pCompositor->getMonitorFromID(m_iLastSurfaceMonitorID);
|
const auto PLASTMONITOR = g_pCompositor->getMonitorFromID(m_iLastSurfaceMonitorID);
|
||||||
|
@ -345,6 +345,9 @@ void CWindow::updateSurfaceScaleTransformDetails() {
|
||||||
|
|
||||||
const auto PNEWMONITOR = g_pCompositor->getMonitorFromID(m_iMonitorID);
|
const auto PNEWMONITOR = g_pCompositor->getMonitorFromID(m_iMonitorID);
|
||||||
|
|
||||||
|
if (!PNEWMONITOR)
|
||||||
|
return;
|
||||||
|
|
||||||
if (PNEWMONITOR != PLASTMONITOR) {
|
if (PNEWMONITOR != PLASTMONITOR) {
|
||||||
if (PLASTMONITOR && PLASTMONITOR->m_bEnabled)
|
if (PLASTMONITOR && PLASTMONITOR->m_bEnabled)
|
||||||
wlr_surface_for_each_surface(m_pWLSurface.wlr(), sendLeaveIter, PLASTMONITOR->output);
|
wlr_surface_for_each_surface(m_pWLSurface.wlr(), sendLeaveIter, PLASTMONITOR->output);
|
||||||
|
|
Loading…
Reference in a new issue