[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