aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/Compositor.cpp
diff options
context:
space:
mode:
authorvaxerski <[email protected]>2023-02-28 18:50:47 +0000
committervaxerski <[email protected]>2023-02-28 18:50:47 +0000
commit7e523e4d5e526bdf5ab86a8f4fe37efeef356707 (patch)
treee83277933da2e43028d76271726e9aff069079bb /src/Compositor.cpp
parent89e7d812c80038083acdca85a5ba08ad97b2d0ea (diff)
downloadHyprland-7e523e4d5e526bdf5ab86a8f4fe37efeef356707.tar.gz
Hyprland-7e523e4d5e526bdf5ab86a8f4fe37efeef356707.zip
minor fixes to X11 configure/or handling
Diffstat (limited to 'src/Compositor.cpp')
-rw-r--r--src/Compositor.cpp13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/Compositor.cpp b/src/Compositor.cpp
index 9346dd9c..52e2f6ad 100644
--- a/src/Compositor.cpp
+++ b/src/Compositor.cpp
@@ -498,10 +498,6 @@ CMonitor* CCompositor::getMonitorFromVector(const Vector2D& point) {
void CCompositor::removeWindowFromVectorSafe(CWindow* pWindow) {
if (windowExists(pWindow) && !pWindow->m_bFadingOut) {
- if (pWindow->m_bIsX11 && pWindow->m_iX11Type == 2) {
- std::erase_if(m_dUnmanagedX11Windows, [&](std::unique_ptr<CWindow>& el) { return el.get() == pWindow; });
- }
-
// if X11, also check its children
// and delete any needed
if (pWindow->m_bIsX11) {
@@ -519,6 +515,10 @@ void CCompositor::removeWindowFromVectorSafe(CWindow* pWindow) {
}
}
+ if (pWindow->m_bIsX11 && pWindow->m_iX11Type == 2) {
+ std::erase_if(m_dUnmanagedX11Windows, [&](std::unique_ptr<CWindow>& el) { return el.get() == pWindow; });
+ }
+
std::erase_if(m_vWindows, [&](std::unique_ptr<CWindow>& el) { return el.get() == pWindow; });
}
}
@@ -529,6 +529,11 @@ bool CCompositor::windowExists(CWindow* pWindow) {
return true;
}
+ for (auto& u : m_dUnmanagedX11Windows) {
+ if (u.get() == pWindow)
+ return true;
+ }
+
return false;
}