From 06eefe7c1eb39fe49c9fdf2b122528058fd6ec05 Mon Sep 17 00:00:00 2001 From: Noisyfox Date: Thu, 11 Jun 2026 02:47:33 +0800 Subject: [PATCH] Make sure mouse position is updated before hit test (#14139) --- src/slic3r/GUI/BBLTopbar.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/slic3r/GUI/BBLTopbar.cpp b/src/slic3r/GUI/BBLTopbar.cpp index 7a5bece0af..eb6f4bcb00 100644 --- a/src/slic3r/GUI/BBLTopbar.cpp +++ b/src/slic3r/GUI/BBLTopbar.cpp @@ -807,6 +807,8 @@ wxAuiToolBarItem* BBLTopbar::FindToolByCurrentPosition() } #ifdef __WXMSW__ +#include + WXLRESULT CenteredTitle::MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam) { switch (nMsg) { @@ -823,6 +825,8 @@ WXLRESULT BBLTopbar::MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam { switch (nMsg) { case WM_NCHITTEST: { + m_last_mouse_position = ScreenToClient({GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam)}); + wxAuiToolBarItem* item = this->FindToolByCurrentPosition(); if (item != NULL && item->GetWindow() != m_title_ctrl) { break;