summaryrefslogtreecommitdiff
path: root/src/events/Windows.cpp
diff options
context:
space:
mode:
authorvaxerski <43317083+vaxerski@users.noreply.github.com>2022-10-24 12:25:36 +0100
committervaxerski <43317083+vaxerski@users.noreply.github.com>2022-10-24 12:25:36 +0100
commitc04563734e0482bd10045c70d9d85177e5448143 (patch)
tree84e4faa43322f690096fdcb38db980047e51c304 /src/events/Windows.cpp
parent1d0d350fc31c7b7b834dcf15016bf1495b81d7e1 (diff)
Rework candidate finding on close window
Diffstat (limited to 'src/events/Windows.cpp')
-rw-r--r--src/events/Windows.cpp8
1 files changed, 1 insertions, 7 deletions
diff --git a/src/events/Windows.cpp b/src/events/Windows.cpp
index 1235176a..e2946d73 100644
--- a/src/events/Windows.cpp
+++ b/src/events/Windows.cpp
@@ -548,13 +548,7 @@ void Events::listener_unmapWindow(void* owner, void* data) {
// refocus on a new window if needed
if (wasLastWindow) {
- auto PWINDOWCANDIDATE = g_pCompositor->vectorToWindowIdeal(PWINDOW->m_vRealPosition.goalv() + PWINDOW->m_vRealSize.goalv() / 2.f);
-
- if (PWORKSPACE->m_bHasFullscreenWindow && ((!PWINDOWCANDIDATE || !PWINDOWCANDIDATE->m_bCreatedOverFullscreen) || !PWINDOW->m_bIsFloating))
- PWINDOWCANDIDATE = g_pCompositor->getFullscreenWindowOnWorkspace(PWORKSPACE->m_iID);
-
- if (!PWINDOWCANDIDATE || PWINDOW == PWINDOWCANDIDATE || !PWINDOWCANDIDATE->m_bIsMapped || PWINDOWCANDIDATE->isHidden() || PWINDOWCANDIDATE->m_bX11ShouldntFocus || PWINDOWCANDIDATE->m_iX11Type == 2 || PWINDOWCANDIDATE->m_iMonitorID != g_pCompositor->m_pLastMonitor->ID)
- PWINDOWCANDIDATE = nullptr;
+ const auto PWINDOWCANDIDATE = g_pLayoutManager->getCurrentLayout()->getNextWindowCandidate(PWINDOW);
Debug::log(LOG, "On closed window, new focused candidate is %x", PWINDOWCANDIDATE);