diff --git a/launcher/ui/widgets/CheckComboBox.cpp b/launcher/ui/widgets/CheckComboBox.cpp index 8117baa58..189f7ebb4 100644 --- a/launcher/ui/widgets/CheckComboBox.cpp +++ b/launcher/ui/widgets/CheckComboBox.cpp @@ -68,10 +68,10 @@ class CheckComboModel : public QIdentityProxyModel { QStringList checked; }; -CheckComboBox::CheckComboBox(QWidget* parent) : QComboBox(parent), m_separator(",") +CheckComboBox::CheckComboBox(QWidget* parent) : QComboBox(parent), m_separator(", ") { QLineEdit* lineEdit = new QLineEdit(this); - lineEdit->setReadOnly(false); + lineEdit->setReadOnly(true); setLineEdit(lineEdit); lineEdit->disconnect(this); setInsertPolicy(QComboBox::NoInsert); diff --git a/launcher/ui/widgets/ModFilterWidget.cpp b/launcher/ui/widgets/ModFilterWidget.cpp index b44a573d8..ead573aee 100644 --- a/launcher/ui/widgets/ModFilterWidget.cpp +++ b/launcher/ui/widgets/ModFilterWidget.cpp @@ -89,6 +89,8 @@ ModFilterWidget::ModFilterWidget(MinecraftInstance* instance, bool extended, QWi ui->versions->setStyleSheet("combobox-popup: 0;"); ui->version->setStyleSheet("combobox-popup: 0;"); + ui->versions->installEventFilter(this); + ui->version->installEventFilter(this); connect(ui->showAllVersions, &QCheckBox::stateChanged, this, &ModFilterWidget::onShowAllVersionsChanged); connect(ui->versions, QOverload::of(&QComboBox::currentIndexChanged), this, &ModFilterWidget::onVersionFilterChanged); connect(ui->version, &QComboBox::currentTextChanged, this, &ModFilterWidget::onVersionFilterTextChanged); @@ -115,6 +117,13 @@ ModFilterWidget::ModFilterWidget(MinecraftInstance* instance, bool extended, QWi prepareBasicFilter(); } +bool ModFilterWidget::eventFilter(QObject* obj, QEvent* evt) +{ + if ((obj != ui->versions && obj != ui->version) || evt->type() != QEvent::Wheel) + return QTabWidget::eventFilter(obj, evt); + return true; +} + auto ModFilterWidget::getFilter() -> std::shared_ptr { m_filter_changed = false; diff --git a/launcher/ui/widgets/ModFilterWidget.h b/launcher/ui/widgets/ModFilterWidget.h index 4358dd91d..35125c910 100644 --- a/launcher/ui/widgets/ModFilterWidget.h +++ b/launcher/ui/widgets/ModFilterWidget.h @@ -85,6 +85,7 @@ class ModFilterWidget : public QTabWidget { public slots: void setCategories(const QList&); + bool eventFilter(QObject* obj, QEvent* evt); private: ModFilterWidget(MinecraftInstance* instance, bool extendedSupport, QWidget* parent = nullptr);