From 397e08c16a7b7e414e8ef466e22fe5d4a581bafc Mon Sep 17 00:00:00 2001 From: MightyPlaza <123664421+MightyPlaza@users.noreply.github.com> Date: Fri, 22 Mar 2024 17:41:20 +0000 Subject: [PATCH] input: focus window on mouse down on groupbar (#5224) modified: src/render/decorations/CHyprGroupBarDecoration.cpp --- src/render/decorations/CHyprGroupBarDecoration.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/render/decorations/CHyprGroupBarDecoration.cpp b/src/render/decorations/CHyprGroupBarDecoration.cpp index defff9ba..a03d97f9 100644 --- a/src/render/decorations/CHyprGroupBarDecoration.cpp +++ b/src/render/decorations/CHyprGroupBarDecoration.cpp @@ -425,6 +425,7 @@ bool CHyprGroupBarDecoration::onMouseButtonOnDeco(const Vector2D& pos, wlr_point const float BARRELATIVEX = pos.x - assignedBoxGlobal().x; const int WINDOWINDEX = (BARRELATIVEX) / (m_fBarWidth + BAR_HORIZONTAL_PADDING); + static auto PFOLLOWMOUSE = CConfigValue("input:follow_mouse"); // close window on middle click if (e->button == 274) { @@ -453,6 +454,9 @@ bool CHyprGroupBarDecoration::onMouseButtonOnDeco(const Vector2D& pos, wlr_point if (pWindow != m_pWindow) pWindow->setGroupCurrent(pWindow); + if (!g_pCompositor->isWindowActive(pWindow) && *PFOLLOWMOUSE != 3) + g_pCompositor->focusWindow(pWindow); + if (pWindow->m_bIsFloating) g_pCompositor->changeWindowZOrder(pWindow, 1);