From 7167066abf1008d17064066f603d8e48c546a29d Mon Sep 17 00:00:00 2001
From: con <qtc-committer@nokia.com>
Date: Mon, 22 Mar 2010 12:41:04 +0100
Subject: [PATCH] Fixes: Selection in color scheme settings sometimes didn't
 match reality.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

In case of the default being used, the selected item in the settings
was always the first of the schemes, in "inode order".
The fix always puts the default scheme at the top of the list
which makes sense anyhow.

Reviewed-by: Thorbjørn
---
 src/plugins/texteditor/fontsettings.h       | 2 +-
 src/plugins/texteditor/fontsettingspage.cpp | 6 +++++-
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/src/plugins/texteditor/fontsettings.h b/src/plugins/texteditor/fontsettings.h
index def4dc63a91..70b78343dd8 100644
--- a/src/plugins/texteditor/fontsettings.h
+++ b/src/plugins/texteditor/fontsettings.h
@@ -102,9 +102,9 @@ public:
     static QString defaultFixedFontFamily();
     static int defaultFontSize();
 
-private:
     static QString defaultSchemeFileName(const QString &fileName = QString());
 
+private:
     QString m_family;
     QString m_schemeFileName;
     int m_fontSize;
diff --git a/src/plugins/texteditor/fontsettingspage.cpp b/src/plugins/texteditor/fontsettingspage.cpp
index 624732eb97f..1ae5df7f523 100644
--- a/src/plugins/texteditor/fontsettingspage.cpp
+++ b/src/plugins/texteditor/fontsettingspage.cpp
@@ -562,7 +562,11 @@ void FontSettingsPage::refreshColorSchemeList()
 
     int selected = 0;
 
-    foreach (const QString &file, styleDir.entryList()) {
+    QStringList schemeList = styleDir.entryList();
+    QString defaultScheme = QFileInfo(FontSettings::defaultSchemeFileName()).fileName();
+    if (schemeList.removeAll(defaultScheme))
+        schemeList.prepend(defaultScheme);
+    foreach (const QString &file, schemeList) {
         const QString fileName = styleDir.absoluteFilePath(file);
         if (d_ptr->m_value.colorSchemeFileName() == fileName)
             selected = colorSchemes.size();
-- 
GitLab