diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/kitemviews/private/kbaloorolesprovider.cpp | 7 | ||||
| -rw-r--r-- | src/kitemviews/private/kbaloorolesprovider.h | 1 |
2 files changed, 7 insertions, 1 deletions
diff --git a/src/kitemviews/private/kbaloorolesprovider.cpp b/src/kitemviews/private/kbaloorolesprovider.cpp index 16e3935ca..d6c15afcd 100644 --- a/src/kitemviews/private/kbaloorolesprovider.cpp +++ b/src/kitemviews/private/kbaloorolesprovider.cpp @@ -29,6 +29,7 @@ #include <QTime> #include <QMap> +#include <QCollator> struct KBalooRolesProviderSingleton { @@ -159,7 +160,11 @@ KBalooRolesProvider::KBalooRolesProvider() : QString KBalooRolesProvider::tagsFromValues(const QStringList& values) const { - return values.join(QStringLiteral(", ")); + QStringList alphabeticalOrderTags = values; + QCollator coll; + coll.setNumericMode(true); + std::sort(alphabeticalOrderTags.begin(), alphabeticalOrderTags.end(), [&](const QString& s1, const QString& s2){ return coll.compare(s1, s2) < 0; }); + return alphabeticalOrderTags.join(QStringLiteral(", ")); } QString KBalooRolesProvider::orientationFromValue(int value) const diff --git a/src/kitemviews/private/kbaloorolesprovider.h b/src/kitemviews/private/kbaloorolesprovider.h index a9bd2e8ef..65b59793c 100644 --- a/src/kitemviews/private/kbaloorolesprovider.h +++ b/src/kitemviews/private/kbaloorolesprovider.h @@ -62,6 +62,7 @@ protected: private: /** * @return User visible string for the given tag-values. + * The tag-values are sorted in alphabetical order. */ QString tagsFromValues(const QStringList& values) const; |
