From 55825c301e5f437566e042d7036bc29a2e48257b Mon Sep 17 00:00:00 2001 From: Vaxry Date: Sun, 5 Nov 2023 16:21:47 +0000 Subject: [PATCH] compositor: allow windowfromregex floating param fixes #3766 --- src/Compositor.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/Compositor.cpp b/src/Compositor.cpp index 4f655c16..fc45496e 100644 --- a/src/Compositor.cpp +++ b/src/Compositor.cpp @@ -2350,6 +2350,19 @@ CWindow* CCompositor::getWindowByRegex(const std::string& regexp) { } else if (regexp.starts_with("pid:")) { mode = MODE_PID; matchCheck = regexp.substr(4); + } else if (regexp.starts_with("floating")) { + // first floating on the current ws + if (!m_pLastWindow) + return nullptr; + + for (auto& w : m_vWindows) { + if (!w->m_bIsMapped || !w->m_bIsFloating || w->m_iWorkspaceID != m_pLastWindow->m_iWorkspaceID || w->isHidden()) + continue; + + return w.get(); + } + + return nullptr; } for (auto& w : g_pCompositor->m_vWindows) {