From 80ff0201ef18285093d4207e1273a021f38d67ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Hrdli=C4=8Dka?= <13226155+dhrdlicka@users.noreply.github.com> Date: Tue, 15 Jul 2025 22:50:21 +0200 Subject: [PATCH] Clip the cursor to the focused window --- src/qt/qt_rendererstack.cpp | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/qt/qt_rendererstack.cpp b/src/qt/qt_rendererstack.cpp index 5256de3d6..821b4c741 100644 --- a/src/qt/qt_rendererstack.cpp +++ b/src/qt/qt_rendererstack.cpp @@ -166,6 +166,10 @@ int ignoreNextMouseEvent = 1; void RendererStack::mouseReleaseEvent(QMouseEvent *event) { +#ifdef Q_OS_WINDOWS + rw_hwnd = (HWND) this->winId(); +#endif + if (!dopause && this->geometry().contains(m_monitor_index >= 1 ? event->globalPos() : event->pos()) && (event->button() == Qt::LeftButton) && !mouse_capture && (isMouseDown & 1) && (kbd_req_capture || (mouse_get_buttons() != 0)) && @@ -410,14 +414,8 @@ RendererStack::createRenderer(Renderer renderer) #endif } if (current.get() == nullptr) { -#ifdef Q_OS_WINDOWS - rw_hwnd = NULL; -#endif return; } -#ifdef Q_OS_WINDOWS - rw_hwnd = (HWND) this->winId(); -#endif current->setFocusPolicy(Qt::NoFocus); current->setFocusProxy(this); current->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);