minor XWayland and rule fixes

This commit is contained in:
vaxerski 2022-04-18 13:10:58 +02:00
parent 8a8877e739
commit 30683d5c44
2 changed files with 6 additions and 4 deletions

View file

@ -32,6 +32,7 @@ void Events::listener_mapWindow(void* owner, void* data) {
PWINDOW->m_bIsMapped = true; PWINDOW->m_bIsMapped = true;
PWINDOW->m_bReadyToDelete = false; PWINDOW->m_bReadyToDelete = false;
PWINDOW->m_bFadingOut = false; PWINDOW->m_bFadingOut = false;
PWINDOW->m_szTitle = g_pXWaylandManager->getTitle(PWINDOW);
// checks if the window wants borders and sets the appriopriate flag // checks if the window wants borders and sets the appriopriate flag
g_pXWaylandManager->checkBorders(PWINDOW); g_pXWaylandManager->checkBorders(PWINDOW);
@ -124,9 +125,6 @@ void Events::listener_mapWindow(void* owner, void* data) {
// Set the pseudo size here too so that it doesnt end up being 0x0 // Set the pseudo size here too so that it doesnt end up being 0x0
PWINDOW->m_vPseudoSize = PWINDOW->m_vEffectiveSize - Vector2D(10,10); PWINDOW->m_vPseudoSize = PWINDOW->m_vEffectiveSize - Vector2D(10,10);
} }
PWINDOW->m_szTitle = g_pXWaylandManager->getTitle(PWINDOW);
g_pCompositor->focusWindow(PWINDOW); g_pCompositor->focusWindow(PWINDOW);

View file

@ -148,6 +148,10 @@ bool CHyprXWaylandManager::shouldBeFloated(CWindow* pWindow) {
return true; return true;
} }
if (pWindow->m_iX11Type == 2) {
return true; // override_redirect
}
const auto SIZEHINTS = pWindow->m_uSurface.xwayland->size_hints; const auto SIZEHINTS = pWindow->m_uSurface.xwayland->size_hints;
if (SIZEHINTS && (pWindow->m_uSurface.xwayland->parent || ((SIZEHINTS->min_width == SIZEHINTS->max_width) && (SIZEHINTS->min_height == SIZEHINTS->max_height)))) if (SIZEHINTS && (pWindow->m_uSurface.xwayland->parent || ((SIZEHINTS->min_width == SIZEHINTS->max_width) && (SIZEHINTS->min_height == SIZEHINTS->max_height))))
return true; return true;
@ -185,7 +189,7 @@ void CHyprXWaylandManager::checkBorders(CWindow* pWindow) {
} }
} }
if (pWindow->m_uSurface.xwayland->parent) { if (pWindow->m_uSurface.xwayland->parent || pWindow->m_iX11Type == 2) {
pWindow->m_bX11DoesntWantBorders = true; pWindow->m_bX11DoesntWantBorders = true;
} }
} }