diff --git a/ui/platform/ui_platform_window.cpp b/ui/platform/ui_platform_window.cpp index 5cada35..e3bcff0 100644 --- a/ui/platform/ui_platform_window.cpp +++ b/ui/platform/ui_platform_window.cpp @@ -266,6 +266,10 @@ void BasicWindowHelper::setupBodyTitleAreaEvents() { #endif // Q_OS_WIN _mousePressed = false; _window->windowHandle()->startSystemMove(); + SendSynteticMouseEvent( + body().get(), + QEvent::MouseButtonRelease, + Qt::LeftButton); } } }, body()->lifetime()); @@ -363,6 +367,10 @@ void DefaultWindowHelper::init() { if (mouseEvent->button() == Qt::LeftButton && edges) { window()->windowHandle()->startSystemResize(edges); + SendSynteticMouseEvent( + window().get(), + QEvent::MouseButtonRelease, + Qt::LeftButton); } } else if (e->type() == QEvent::WindowStateChange) { _windowState = window()->windowState(); diff --git a/ui/platform/ui_platform_window_title.cpp b/ui/platform/ui_platform_window_title.cpp index af4bbb6..1a47b1a 100644 --- a/ui/platform/ui_platform_window_title.cpp +++ b/ui/platform/ui_platform_window_title.cpp @@ -501,6 +501,10 @@ void DefaultTitleWidget::mouseReleaseEvent(QMouseEvent *e) { void DefaultTitleWidget::mouseMoveEvent(QMouseEvent *e) { if (_mousePressed) { window()->windowHandle()->startSystemMove(); + SendSynteticMouseEvent( + this, + QEvent::MouseButtonRelease, + Qt::LeftButton); } } diff --git a/ui/widgets/separate_panel.cpp b/ui/widgets/separate_panel.cpp index 2f6b2e0..60a7cbe 100644 --- a/ui/widgets/separate_panel.cpp +++ b/ui/widgets/separate_panel.cpp @@ -768,6 +768,10 @@ void SeparatePanel::mousePressEvent(QMouseEvent *e) { if (dragArea.contains(e->pos())) { const auto dragViaSystem = [&] { if (windowHandle()->startSystemMove()) { + SendSynteticMouseEvent( + this, + QEvent::MouseButtonRelease, + Qt::LeftButton); return true; } return false;