summaryrefslogtreecommitdiff
path: root/src/Window.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/Window.cpp')
-rw-r--r--src/Window.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/Window.cpp b/src/Window.cpp
index 4de6d5a9..c1f7a56f 100644
--- a/src/Window.cpp
+++ b/src/Window.cpp
@@ -558,13 +558,18 @@ void CWindow::setGroupCurrent(CWindow* pWindow) {
if (!isMember && pWindow != this)
return;
- const auto PCURRENT = getGroupCurrent();
+ const auto PCURRENT = getGroupCurrent();
+ const bool FULLSCREEN = PCURRENT->m_bIsFullscreen;
+ const auto WORKSPACE = g_pCompositor->getWorkspaceByID(PCURRENT->m_iWorkspaceID);
const auto PWINDOWSIZE = PCURRENT->m_vRealSize.goalv();
const auto PWINDOWPOS = PCURRENT->m_vRealPosition.goalv();
const auto CURRENTISFOCUS = PCURRENT == g_pCompositor->m_pLastWindow;
+ if (FULLSCREEN)
+ g_pCompositor->setWindowFullscreen(PCURRENT, false, WORKSPACE->m_efFullscreenMode);
+
PCURRENT->setHidden(true);
pWindow->setHidden(false);
@@ -579,6 +584,9 @@ void CWindow::setGroupCurrent(CWindow* pWindow) {
if (CURRENTISFOCUS)
g_pCompositor->focusWindow(pWindow);
+
+ if (FULLSCREEN)
+ g_pCompositor->setWindowFullscreen(pWindow, true, WORKSPACE->m_efFullscreenMode);
}
void CWindow::insertWindowToGroup(CWindow* pWindow) {