summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/Compositor.cpp10
-rw-r--r--src/Compositor.hpp1
2 files changed, 11 insertions, 0 deletions
diff --git a/src/Compositor.cpp b/src/Compositor.cpp
index 5efbea2c..c9bd3aad 100644
--- a/src/Compositor.cpp
+++ b/src/Compositor.cpp
@@ -1405,6 +1405,8 @@ void CCompositor::setWindowFullscreen(CWindow* pWindow, bool on, eFullscreenMode
}
g_pXWaylandManager->setWindowSize(pWindow, pWindow->m_vRealSize.goalv(), true);
+
+ forceReportSizesToWindowsOnWorkspace(pWindow->m_iWorkspaceID);
}
void CCompositor::moveUnmanagedX11ToWindows(CWindow* pWindow) {
@@ -1604,4 +1606,12 @@ Vector2D CCompositor::parseWindowVectorArgsRelative(const std::string& args, con
const int Y = std::stoi(y);
return Vector2D(X + relativeTo.x, Y + relativeTo.y);
+}
+
+void CCompositor::forceReportSizesToWindowsOnWorkspace(const int& wid) {
+ for (auto& w : m_vWindows) {
+ if (w->m_iWorkspaceID == wid && w->m_bIsMapped && !w->m_bHidden) {
+ g_pXWaylandManager->setWindowSize(w.get(), w->m_vRealSize.vec(), true);
+ }
+ }
} \ No newline at end of file
diff --git a/src/Compositor.hpp b/src/Compositor.hpp
index 6ab5165f..082e4601 100644
--- a/src/Compositor.hpp
+++ b/src/Compositor.hpp
@@ -158,6 +158,7 @@ public:
SLayerSurface* getLayerSurfaceFromSurface(wlr_surface*);
void closeWindow(CWindow*);
Vector2D parseWindowVectorArgsRelative(const std::string&, const Vector2D&);
+ void forceReportSizesToWindowsOnWorkspace(const int&);
std::string explicitConfigPath;