From 29444cfe0fb9e19397646701d059e02e06874862 Mon Sep 17 00:00:00 2001 From: Trial97 Date: Wed, 29 May 2024 17:19:15 +0300 Subject: [PATCH] fix win combobox take#2 Signed-off-by: Trial97 --- launcher/ui/widgets/CheckComboBox.cpp | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/launcher/ui/widgets/CheckComboBox.cpp b/launcher/ui/widgets/CheckComboBox.cpp index 644f94795..41def3ba1 100644 --- a/launcher/ui/widgets/CheckComboBox.cpp +++ b/launcher/ui/widgets/CheckComboBox.cpp @@ -25,6 +25,7 @@ #include #include #include +#include #include #include @@ -91,7 +92,7 @@ void CheckComboBox::setSourceModel(QAbstractItemModel* new_model) void CheckComboBox::hidePopup() { - if (containerMousePress) + if (!containerMousePress) QComboBox::hidePopup(); } @@ -135,11 +136,11 @@ bool CheckComboBox::eventFilter(QObject* receiver, QEvent* event) } break; } - case QEvent::MouseButtonPress: - /* fallthrough */ - case QEvent::MouseButtonRelease: - containerMousePress = (receiver == view()->window()); + case QEvent::MouseButtonPress: { + auto ev = static_cast(event); + containerMousePress = ev && view()->indexAt(ev->pos()).isValid(); break; + } case QEvent::Wheel: return receiver == this; default: