Use case folding instead of lower case for search

This commit is contained in:
Nicolas Werner 2023-05-19 22:06:04 +02:00
parent 5e1860ae0a
commit 5adf607906
No known key found for this signature in database
GPG key ID: C8D75E610773F2D9

View file

@ -45,7 +45,7 @@ CompletionProxyModel::CompletionProxyModel(QAbstractItemModel *model,
auto string1 = sourceModel()
->data(sourceModel()->index(i, 0), CompletionModel::SearchRole)
.toString()
.toLower();
.toCaseFolded();
if (!string1.isEmpty()) {
trie_.insert<ElementRank::first>(string1.toUcs4(), i);
insertParts(string1, i);
@ -54,7 +54,7 @@ CompletionProxyModel::CompletionProxyModel(QAbstractItemModel *model,
auto string2 = sourceModel()
->data(sourceModel()->index(i, 0), CompletionModel::SearchRole2)
.toString()
.toLower();
.toCaseFolded();
if (!string2.isEmpty()) {
trie_.insert<ElementRank::first>(string2.toUcs4(), i);
insertParts(string2, i);
@ -74,7 +74,7 @@ CompletionProxyModel::CompletionProxyModel(QAbstractItemModel *model,
&CompletionProxyModel::newSearchString,
this,
[this](const QString &s) {
searchString_ = s.toLower();
searchString_ = s.toCaseFolded();
invalidate();
},
Qt::QueuedConnection);