summaryrefslogtreecommitdiff
path: root/src/events/Windows.cpp
diff options
context:
space:
mode:
authorvaxerski <43317083+vaxerski@users.noreply.github.com>2022-10-22 16:45:33 +0100
committervaxerski <43317083+vaxerski@users.noreply.github.com>2022-10-22 16:45:33 +0100
commit44cee0f5f84caf093871ccbc74778c9497ac8bbd (patch)
tree1b224b9251e6a4d091831f3d8e133ef0892dabd4 /src/events/Windows.cpp
parent2c714eace5bc903e5e9ef9e2c3048cb65a2ca9b4 (diff)
more safety for focus requests
Diffstat (limited to 'src/events/Windows.cpp')
-rw-r--r--src/events/Windows.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/events/Windows.cpp b/src/events/Windows.cpp
index c0b5ff80..7a98aa88 100644
--- a/src/events/Windows.cpp
+++ b/src/events/Windows.cpp
@@ -700,7 +700,7 @@ void Events::listener_activateXDG(wl_listener* listener, void* data) {
const auto PWINDOW = g_pCompositor->getWindowFromSurface(E->surface);
- if (!PWINDOW)
+ if (!PWINDOW || PWINDOW == g_pCompositor->m_pLastWindow)
return;
g_pCompositor->focusWindow(PWINDOW);
@@ -715,7 +715,7 @@ void Events::listener_activateX11(void* owner, void* data) {
Debug::log(LOG, "X11 Activate request for window %x", PWINDOW);
- if (!*PFOCUSONACTIVATE || PWINDOW->m_iX11Type != 1)
+ if (!*PFOCUSONACTIVATE || PWINDOW->m_iX11Type != 1 || PWINDOW == g_pCompositor->m_pLastWindow)
return;
g_pCompositor->focusWindow(PWINDOW);