From 18e0777e4115d344d7bf295c7510145a49b44a59 Mon Sep 17 00:00:00 2001
From: Roberto Raggi <roberto.raggi@nokia.com>
Date: Mon, 1 Feb 2010 11:32:41 +0100
Subject: [PATCH] Sort lower case items before upper case items in QML/JS
 completion.

Done with: Thorbjorn
---
 src/plugins/qmljseditor/qmlcodecompletion.cpp | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/src/plugins/qmljseditor/qmlcodecompletion.cpp b/src/plugins/qmljseditor/qmlcodecompletion.cpp
index 28bb8d1194e..1b8e730fab4 100644
--- a/src/plugins/qmljseditor/qmlcodecompletion.cpp
+++ b/src/plugins/qmljseditor/qmlcodecompletion.cpp
@@ -852,13 +852,23 @@ void QmlCodeCompletion::updateSnippets()
     file.close();
 }
 
+static bool qmlCompletionItemLessThan(const TextEditor::CompletionItem &l, const TextEditor::CompletionItem &r)
+{
+    if (l.text.at(0).isUpper() && r.text.at(0).isLower())
+        return false;
+    else if (l.text.at(0).isLower() && r.text.at(0).isUpper())
+        return true;
+
+    return l.text < r.text;
+}
+
 QList<TextEditor::CompletionItem> QmlCodeCompletion::getCompletions()
 {
     QList<TextEditor::CompletionItem> completionItems;
 
     completions(&completionItems);
 
-    qStableSort(completionItems.begin(), completionItems.end(), completionItemLessThan);
+    qStableSort(completionItems.begin(), completionItems.end(), qmlCompletionItemLessThan);
 
     // Remove duplicates
     QString lastKey;
-- 
GitLab