New upstream release (LP: #2047379).

ubuntu/noble ubuntu/1.1.2-0ubuntu1
Simon Quigley 12 months ago
parent e8739c50fb
commit b3597f8fca

6
debian/changelog vendored

@ -1,3 +1,9 @@
lubuntu-installer-prompt (1.1.2-0ubuntu1) noble; urgency=medium
* New upstream release (LP: #2047379).
-- Simon Quigley <tsimonq2@ubuntu.com> Mon, 01 Jan 2024 13:56:49 -0600
lubuntu-installer-prompt (1.1.1-0ubuntu2) noble; urgency=medium lubuntu-installer-prompt (1.1.1-0ubuntu2) noble; urgency=medium
* Ensure C is not the default locale, to the user. * Ensure C is not the default locale, to the user.

@ -1,72 +0,0 @@
commit 7ac27098cf9c03fa02d9bac4536f7d6ee3159e42
Author: Simon Quigley <simon@tsimonq2.net>
Date: Sat Dec 23 17:53:11 2023 -0600
Don't default to C, and be somewhat reasonable about locales, to start.
diff --git a/src/installerprompt.cpp b/src/installerprompt.cpp
index 04bc415..87a20c3 100644
--- a/src/installerprompt.cpp
+++ b/src/installerprompt.cpp
@@ -376,10 +376,15 @@ QString InstallerPrompt::getDisplayNameForLocale(const QLocale &locale) {
return s;
};
+ QLocale currentAppLocale = QLocale::system();
QString nativeName = locale.nativeLanguageName();
QString nativeCountryName = sanitize(locale.nativeCountryName());
- QString englishLanguageName = QLocale::languageToString(locale.language());
- QString englishCountryName = sanitize(QLocale::countryToString(locale.country()));
+ QString englishLanguageName = currentAppLocale.languageToString(locale.language());
+ QString englishCountryName = sanitize(currentAppLocale.countryToString(locale.country()));
+
+ if (nativeName.isEmpty() || nativeCountryName.isEmpty()) {
+ return QString();
+ }
// Rename "American English" to "English"
if (locale.language() == QLocale::English) {
@@ -419,31 +424,29 @@ void InstallerPrompt::initLanguageComboBox() {
}
QStringList InstallerPrompt::getAvailableLanguages() {
- QMap<QString, QString> languageMap; // Default sorting by QString is case-sensitive
-
- for (int language = QLocale::C; language <= QLocale::LastLanguage; ++language) {
- foreach (int country, QLocale::countriesForLanguage(static_cast<QLocale::Language>(language))) {
- QLocale locale(static_cast<QLocale::Language>(language), static_cast<QLocale::Country>(country));
+ QMap<QString, QString> language_map; // Default sorting by QString is case-sensitive
- QString displayName = getDisplayNameForLocale(locale);
- if (displayName.isEmpty()) continue;
+ QList<QLocale> all_locales = QLocale::matchingLocales(QLocale::AnyLanguage, QLocale::AnyScript, QLocale::AnyCountry);
+ for (const QLocale &locale : all_locales) {
+ QString display_name = getDisplayNameForLocale(locale);
+ if (display_name.isEmpty()) continue;
- languageMap.insert(displayName, locale.name());
- }
+ language_map.insert(display_name, locale.name());
}
+
// Sort the language display names
- QStringList sortedLanguages = languageMap.keys();
- std::sort(sortedLanguages.begin(), sortedLanguages.end(), [](const QString &a, const QString &b) {
+ QStringList sorted_languages = language_map.keys();
+ std::sort(sorted_languages.begin(), sorted_languages.end(), [](const QString &a, const QString &b) {
return a.compare(b, Qt::CaseInsensitive) < 0;
});
// Clear the existing languageLocaleMap and repopulate it based on sortedLanguages
languageLocaleMap.clear();
- for (const QString &languageName : sortedLanguages) {
- languageLocaleMap.insert(languageName, languageMap[languageName]);
+ for (const QString &language_name : sorted_languages) {
+ languageLocaleMap.insert(language_name, language_map[language_name]);
}
- return sortedLanguages;
+ return sorted_languages;
}
void InstallerPrompt::onLanguageChanged(int index) {

@ -1 +0,0 @@
c-fixes.patch
Loading…
Cancel
Save