diff --git a/src/libs/extensionsystem/pluginview.cpp b/src/libs/extensionsystem/pluginview.cpp index bf40d8d7f84..88a7350e403 100644 --- a/src/libs/extensionsystem/pluginview.cpp +++ b/src/libs/extensionsystem/pluginview.cpp @@ -315,7 +315,6 @@ PluginView::PluginView(QWidget *parent) m_sortModel = new CategorySortFilterModel(this); m_sortModel->setSourceModel(m_model); m_sortModel->setSortRole(SortRole); - m_sortModel->setFilterCaseSensitivity(Qt::CaseInsensitive); m_sortModel->setFilterKeyColumn(-1/*all*/); m_categoryView->setModel(m_sortModel); @@ -357,7 +356,9 @@ PluginSpec *PluginView::currentPlugin() const */ void PluginView::setFilter(const QString &filter) { - m_sortModel->setFilterFixedString(filter); + m_sortModel->setFilterRegularExpression( + QRegularExpression(QRegularExpression::escape(filter), + QRegularExpression::CaseInsensitiveOption)); m_categoryView->expandAll(); } diff --git a/src/plugins/cmakeprojectmanager/cmakebuildsettingswidget.cpp b/src/plugins/cmakeprojectmanager/cmakebuildsettingswidget.cpp index a564bb12529..1baebfc8b4d 100644 --- a/src/plugins/cmakeprojectmanager/cmakebuildsettingswidget.cpp +++ b/src/plugins/cmakeprojectmanager/cmakebuildsettingswidget.cpp @@ -153,7 +153,6 @@ CMakeBuildSettingsWidget::CMakeBuildSettingsWidget(CMakeBuildConfiguration *bc) m_configTextFilterModel->setSourceModel(m_configFilterModel); m_configTextFilterModel->setSortRole(Qt::DisplayRole); m_configTextFilterModel->setFilterKeyColumn(-1); - m_configTextFilterModel->setFilterCaseSensitivity(Qt::CaseInsensitive); connect(m_configTextFilterModel, &QAbstractItemModel::layoutChanged, this, [this]() { QModelIndex selectedIdx = m_configView->currentIndex(); @@ -271,8 +270,14 @@ CMakeBuildSettingsWidget::CMakeBuildSettingsWidget(CMakeBuildConfiguration *bc) connect(m_showAdvancedCheckBox, &QCheckBox::stateChanged, this, &CMakeBuildSettingsWidget::updateAdvancedCheckBox); - connect(m_filterEdit, &QLineEdit::textChanged, - m_configTextFilterModel, &QSortFilterProxyModel::setFilterFixedString); + connect(m_filterEdit, + &QLineEdit::textChanged, + m_configTextFilterModel, + [this](const QString &txt) { + m_configTextFilterModel->setFilterRegularExpression( + QRegularExpression(QRegularExpression::escape(txt), + QRegularExpression::CaseInsensitiveOption)); + }); connect(m_resetButton, &QPushButton::clicked, m_configModel, &ConfigModel::resetAllChanges); connect(m_reconfigureButton, diff --git a/src/plugins/coreplugin/locator/locatorsettingspage.cpp b/src/plugins/coreplugin/locator/locatorsettingspage.cpp index 993bd84cc89..02ddbf6337c 100644 --- a/src/plugins/coreplugin/locator/locatorsettingspage.cpp +++ b/src/plugins/coreplugin/locator/locatorsettingspage.cpp @@ -190,7 +190,6 @@ public: m_proxyModel = new CategorySortFilterModel(m_ui.filterList); m_proxyModel->setSourceModel(m_model); m_proxyModel->setSortRole(SortRole); - m_proxyModel->setFilterCaseSensitivity(Qt::CaseInsensitive); m_proxyModel->setFilterKeyColumn(-1/*all*/); m_ui.filterList->setModel(m_proxyModel); m_ui.filterList->expandAll(); @@ -294,7 +293,9 @@ void LocatorSettingsWidget::requestRefresh() void LocatorSettingsWidget::setFilter(const QString &text) { - m_proxyModel->setFilterFixedString(text); + m_proxyModel->setFilterRegularExpression( + QRegularExpression(QRegularExpression::escape(text), + QRegularExpression::CaseInsensitiveOption)); m_ui.filterList->expandAll(); } diff --git a/src/plugins/mesonprojectmanager/project/buildoptions/mesonbuildsettingswidget.cpp b/src/plugins/mesonprojectmanager/project/buildoptions/mesonbuildsettingswidget.cpp index df91c285fab..b8b35373b60 100644 --- a/src/plugins/mesonprojectmanager/project/buildoptions/mesonbuildsettingswidget.cpp +++ b/src/plugins/mesonprojectmanager/project/buildoptions/mesonbuildsettingswidget.cpp @@ -69,7 +69,6 @@ MesonBuildSettingsWidget::MesonBuildSettingsWidget(MesonBuildConfiguration *buil m_optionsFilter.setSourceModel(&m_optionsModel); m_optionsFilter.setSortRole(Qt::DisplayRole); m_optionsFilter.setFilterKeyColumn(-1); - m_optionsFilter.setFilterCaseSensitivity(Qt::CaseInsensitive); ui->optionsTreeView->setModel(&m_optionsFilter); @@ -109,7 +108,11 @@ MesonBuildSettingsWidget::MesonBuildSettingsWidget(MesonBuildConfiguration *buil connect(ui->optionsFilterLineEdit, &QLineEdit::textChanged, &m_optionsFilter, - &QSortFilterProxyModel::setFilterFixedString); + [this](const QString &txt) { + m_optionsFilter.setFilterRegularExpression( + QRegularExpression(QRegularExpression::escape(txt), + QRegularExpression::CaseInsensitiveOption)); + }); connect(ui->optionsTreeView, &Utils::TreeView::activated, ui->optionsTreeView,