[SCM] ktp-common-internals packaging branch, master, updated. debian/15.12.1-2-1839-gf0635e9
Maximiliano Curia
maxy at moszumanska.debian.org
Mon May 9 09:06:52 UTC 2016
Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-common-internals.git;a=commitdiff;h=81dda29
The following commit has been merged in the master branch:
commit 81dda2971bc11442adb0659f93244270c88f8e5a
Author: Dan Vrátil <dvratil at redhat.com>
Date: Sat May 18 21:23:59 2013 +0200
Perform foreign-character-insensitive matching with Qt::CaseInsensitive
BUG: 319779
FIXED-IN: 0.7.0
Reviewed-By: DAVID EDMUNDSON
---
KTp/Models/contacts-filter-model.cpp | 17 ++++++++++++++++-
KTp/Models/contacts-filter-model.h | 2 +-
2 files changed, 17 insertions(+), 2 deletions(-)
diff --git a/KTp/Models/contacts-filter-model.cpp b/KTp/Models/contacts-filter-model.cpp
index 8483e18..55cfa5c 100644
--- a/KTp/Models/contacts-filter-model.cpp
+++ b/KTp/Models/contacts-filter-model.cpp
@@ -914,7 +914,22 @@ QModelIndexList ContactsFilterModel::match(const QModelIndex &start, int role,
} else { // QString based matching
if (text.isEmpty()) // lazy conversion
text = value.toString();
- QString t = v.toString();
+ QString t;
+
+ // If we're being case-insensitve then we should also be "foreign character insensitive"
+ if (cs == Qt::CaseInsensitive) {
+ const QString normalized = v.toString().normalized(QString::NormalizationForm_D);
+ Q_FOREACH (const QChar &c, normalized) {
+ if (c.category() != QChar::Mark_NonSpacing
+ && c.category() != QChar::Mark_SpacingCombining
+ && c.category() != QChar::Mark_Enclosing) {
+ t.append(c);
+ }
+ }
+ } else {
+ t = v.toString();
+ }
+
switch (matchType) {
case Qt::MatchRegExp:
if (QRegExp(text, cs).exactMatch(t))
diff --git a/KTp/Models/contacts-filter-model.h b/KTp/Models/contacts-filter-model.h
index 897ae47..a891d6b 100644
--- a/KTp/Models/contacts-filter-model.h
+++ b/KTp/Models/contacts-filter-model.h
@@ -287,7 +287,7 @@ public:
Q_SLOT void clearTubesFilterStrings();
Q_SLOT void setTubesFilterStrings(const QStringList &tubesFilterStrings);
Q_SIGNAL void tubesFilterStringsChanged(const QStringList &tubesFilterStrings);
-
+
QString sortRoleString() const;
Q_SLOT void setSortRoleString(const QString &role);
--
ktp-common-internals packaging
More information about the pkg-kde-commits
mailing list