From cf869d963687d26876f6e203a925cd6648380c4a Mon Sep 17 00:00:00 2001 From: vaxerski <43317083+vaxerski@users.noreply.github.com> Date: Mon, 24 Oct 2022 12:37:07 +0100 Subject: [PATCH] allow nofocus + workspace silent --- src/events/Windows.cpp | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/events/Windows.cpp b/src/events/Windows.cpp index e2946d73..627da575 100644 --- a/src/events/Windows.cpp +++ b/src/events/Windows.cpp @@ -375,13 +375,14 @@ void Events::listener_mapWindow(void* owner, void* data) { // move the window const auto OLDWORKSPACE = PWINDOW->m_iWorkspaceID; - if (g_pCompositor->m_pLastWindow == PWINDOW) { - if (requestedWorkspace != "special") - g_pKeybindManager->m_mDispatchers["movetoworkspacesilent"](requestedWorkspace); - else - g_pKeybindManager->m_mDispatchers["movetoworkspace"]("special"); + std::stringstream stream; + stream << std::hex << (uintptr_t)PWINDOW; + std::string hexStr(stream.str()); + + if (requestedWorkspace != "special") { + g_pKeybindManager->m_mDispatchers["movetoworkspacesilent"](requestedWorkspace + ",address:0x" + hexStr); } else { - Debug::log(ERR, "Tried to set workspace silent rule to a nofocus window!"); + g_pKeybindManager->m_mDispatchers["movetoworkspace"]("special,address:0x" + hexStr); } g_pCompositor->forceReportSizesToWindowsOnWorkspace(OLDWORKSPACE);