diff --git a/src/events/Windows.cpp b/src/events/Windows.cpp index 3c8d0009ae5..a52553e2904 100644 --- a/src/events/Windows.cpp +++ b/src/events/Windows.cpp @@ -107,7 +107,7 @@ void Events::listener_mapWindow(void* owner, void* data) { const auto WINDOWRULES = g_pConfigManager->getMatchingRules(PWINDOW); std::string requestedWorkspace = ""; bool workspaceSilent = false; - bool requestsFullscreen = PWINDOW->m_bWantsInitialFullscreen; + bool requestsFullscreen = PWINDOW->m_bWantsInitialFullscreen || (!PWINDOW->m_bIsX11 && PWINDOW->m_uSurface.xdg->role == WLR_XDG_SURFACE_ROLE_TOPLEVEL && PWINDOW->m_uSurface.xdg->toplevel->requested.fullscreen); for (auto& r : WINDOWRULES) { if (r.szRule.find("monitor") == 0) { diff --git a/src/managers/XWaylandManager.cpp b/src/managers/XWaylandManager.cpp index 655ba75acc2..14642878548 100644 --- a/src/managers/XWaylandManager.cpp +++ b/src/managers/XWaylandManager.cpp @@ -34,7 +34,6 @@ wlr_surface* CHyprXWaylandManager::getWindowSurface(CWindow* pWindow) { void CHyprXWaylandManager::activateSurface(wlr_surface* pSurface, bool activate) { if (wlr_surface_is_xdg_surface(pSurface)) { const auto PSURF = wlr_xdg_surface_from_wlr_surface(pSurface); - if (PSURF->role == WLR_XDG_SURFACE_ROLE_TOPLEVEL) { wlr_xdg_toplevel_set_activated(PSURF->toplevel, activate); }