mirror of
https://github.com/hyprwm/Hyprland
synced 2024-12-23 09:29:49 +01:00
use sizehints if existent for X11 default floating
This commit is contained in:
parent
48eb2e0d6f
commit
d35d949bc5
1 changed files with 13 additions and 4 deletions
|
@ -63,10 +63,19 @@ void CHyprXWaylandManager::activateWindow(CWindow* pWindow, bool activate) {
|
||||||
|
|
||||||
void CHyprXWaylandManager::getGeometryForWindow(CWindow* pWindow, wlr_box* pbox) {
|
void CHyprXWaylandManager::getGeometryForWindow(CWindow* pWindow, wlr_box* pbox) {
|
||||||
if (pWindow->m_bIsX11) {
|
if (pWindow->m_bIsX11) {
|
||||||
|
const auto SIZEHINTS = pWindow->m_uSurface.xwayland->size_hints;
|
||||||
|
|
||||||
|
if (SIZEHINTS && SIZEHINTS->width > 5 && SIZEHINTS->height > 5) {
|
||||||
|
pbox->x = SIZEHINTS->x;
|
||||||
|
pbox->y = SIZEHINTS->y;
|
||||||
|
pbox->width = SIZEHINTS->width;
|
||||||
|
pbox->height = SIZEHINTS->height;
|
||||||
|
} else {
|
||||||
pbox->x = pWindow->m_uSurface.xwayland->x;
|
pbox->x = pWindow->m_uSurface.xwayland->x;
|
||||||
pbox->y = pWindow->m_uSurface.xwayland->y;
|
pbox->y = pWindow->m_uSurface.xwayland->y;
|
||||||
pbox->width = pWindow->m_uSurface.xwayland->width;
|
pbox->width = pWindow->m_uSurface.xwayland->width;
|
||||||
pbox->height = pWindow->m_uSurface.xwayland->height;
|
pbox->height = pWindow->m_uSurface.xwayland->height;
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
wlr_xdg_surface_get_geometry(pWindow->m_uSurface.xdg, pbox);
|
wlr_xdg_surface_get_geometry(pWindow->m_uSurface.xdg, pbox);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue