on xenial help sign in
present the languages in their native name
731d649Lukáš Tinkl
plugins/Wizard/LocalePlugin.cpp+4−3
@@ -294,9 +294,10 @@ LocaleAttached::LocaleAttached(QObject* parent)
294QJsonObject LocaleAttached::languages() const
294QJsonObject LocaleAttached::languages() const
295{
295{
296 QJsonObject result;
296 QJsonObject result;
297− for (int i = QLocale::C + 1; i < QLocale::LastLanguage; ++i) {
297+
298− QLocale loc(static_cast<QLocale::Language>(i));
298+ const QList<QLocale> allLocales = QLocale::matchingLocales(QLocale::AnyLanguage, QLocale::AnyScript, QLocale::AnyCountry);
299+ Q_FOREACH(const QLocale &loc, allLocales) {
299− result.insert(loc.name().split('_').first(), QLocale::languageToString(loc.language()));
300+ result.insert(loc.name().split('_').first(), loc.nativeLanguageName());
300 }
301 }
301
302
302 return result;
303 return result;
qml/Wizard/Pages/10-language.qml+1−1
@@ -71,7 +71,7 @@ LocalComponents.Page {
71 return
71 return
72 })
72 })
73 .sort(function(a, b) { // sort by language name
73 .sort(function(a, b) { // sort by language name
74− return a.language.localeCompare(b.language);
74+ return a.language.toLocaleLowerCase().localeCompare(b.language.toLocaleLowerCase()); // sort languages case insensitively
75 })
75 })
76 .forEach(function(lang) { // build the model
76 .forEach(function(lang) { // build the model
77 if (lang.code === "C") {
77 if (lang.code === "C") {
qml/Wizard/Pages/50-timezone.qml−1
@@ -41,7 +41,6 @@ LocalComponents.Page {
41
41
42 Component.onCompleted: {
42 Component.onCompleted: {
43 theme.palette.normal.backgroundText = "#525252" // "fix" the placeholder text in the search field
43 theme.palette.normal.backgroundText = "#525252" // "fix" the placeholder text in the search field
44− searchField.forceActiveFocus()
45 }
44 }
46
45
47 Component {
46 Component {