From 3f99dad7f563593d298bcd548002e5b53a886825 Mon Sep 17 00:00:00 2001 From: vaxerski <43317083+vaxerski@users.noreply.github.com> Date: Sat, 2 Apr 2022 20:04:32 +0200 Subject: Added pseudotiling --- src/managers/KeybindManager.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/managers/KeybindManager.cpp') diff --git a/src/managers/KeybindManager.cpp b/src/managers/KeybindManager.cpp index d9d2fa72..d820e83e 100644 --- a/src/managers/KeybindManager.cpp +++ b/src/managers/KeybindManager.cpp @@ -53,6 +53,7 @@ bool CKeybindManager::handleKeybinds(const uint32_t& modmask, const xkb_keysym_t else if (k.handler == "workspace") { changeworkspace(k.arg); } else if (k.handler == "fullscreen") { fullscreenActive(k.arg); } else if (k.handler == "movetoworkspace") { moveActiveToWorkspace(k.arg); } + else if (k.handler == "pseudo") { toggleActivePseudo(k.arg); } found = true; } @@ -114,6 +115,17 @@ void CKeybindManager::toggleActiveFloating(std::string args) { } } +void CKeybindManager::toggleActivePseudo(std::string args) { + const auto ACTIVEWINDOW = g_pCompositor->m_pLastWindow; + + if (!g_pCompositor->windowValidMapped(ACTIVEWINDOW)) + return; + + ACTIVEWINDOW->m_bIsPseudotiled = !ACTIVEWINDOW->m_bIsPseudotiled; + + g_pLayoutManager->getCurrentLayout()->recalculateWindow(ACTIVEWINDOW); +} + void CKeybindManager::changeworkspace(std::string args) { int workspaceToChangeTo = 0; try { -- cgit v1.2.3