Merge lp:~attente/ubuntu-system-settings/lp1236772 into lp:ubuntu-system-settings

Proposed by William Hua
Status: Merged
Approved by: Łukasz Zemczak
Approved revision: 467
Merged at revision: 468
Proposed branch: lp:~attente/ubuntu-system-settings/lp1236772
Merge into: lp:ubuntu-system-settings
Diff against target: 58 lines (+12/-9)
1 file modified
plugins/language/language-plugin.cpp (+12/-9)
To merge this branch: bzr merge lp:~attente/ubuntu-system-settings/lp1236772
Reviewer Review Type Date Requested Status
Łukasz Zemczak Approve
PS Jenkins bot continuous-integration Approve
Review via email: mp+191659@code.launchpad.net

Commit message

Update formats locale too. (LP: #1236772)

Description of the change

Update formats locale too. (LP: #1236772)

To post a comment you must log in.
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)
Revision history for this message
Łukasz Zemczak (sil2100) wrote :

The change looks nice, I see the values changing on the system as mentioned in specs and bug #1236772. I'm not sure if this merge is good for the later refactoring that has been done here, but those changes make sense in overall. So if no one minds, I'm approving this one.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'plugins/language/language-plugin.cpp'
--- plugins/language/language-plugin.cpp 2013-10-16 23:17:30 +0000
+++ plugins/language/language-plugin.cpp 2013-10-17 14:56:44 +0000
@@ -158,7 +158,9 @@
158 }158 }
159159
160 if (m_nextCurrentLanguage != m_currentLanguage) {160 if (m_nextCurrentLanguage != m_currentLanguage) {
161 act_user_set_language(user, qPrintable(languageCodes()[m_nextCurrentLanguage]));161 QString languageCode(languageCodes()[m_nextCurrentLanguage]);
162 act_user_set_language(user, qPrintable(languageCode.left(languageCode.indexOf('.'))));
163 act_user_set_formats_locale(user, qPrintable(languageCode));
162 m_currentLanguage = m_nextCurrentLanguage;164 m_currentLanguage = m_nextCurrentLanguage;
163 Q_EMIT currentLanguageChanged();165 Q_EMIT currentLanguageChanged();
164 }166 }
@@ -442,10 +444,10 @@
442444
443 QString localeOutput(localeProcess.readAllStandardOutput());445 QString localeOutput(localeProcess.readAllStandardOutput());
444 QStringList localeNames(localeOutput.split(QRegExp("\\s+")));446 QStringList localeNames(localeOutput.split(QRegExp("\\s+")));
445 QSet<QString> languageNames;447 QHash<QString, QString> nameCodes;
446448
447 for (QStringList::const_iterator i(localeNames.begin()); i != localeNames.end(); ++i) {449 for (QStringList::const_iterator i(localeNames.begin()); i != localeNames.end(); ++i) {
448 QString localeName(i->left(i->indexOf('.')));450 QString localeName(i->left(i->indexOf('.')).trimmed());
449 QLocale locale(localeName);451 QLocale locale(localeName);
450 QString languageName(locale.nativeLanguageName().trimmed().toCaseFolded());452 QString languageName(locale.nativeLanguageName().trimmed().toCaseFolded());
451453
@@ -454,14 +456,14 @@
454 QString genericName(genericLocale.nativeLanguageName().trimmed().toCaseFolded());456 QString genericName(genericLocale.nativeLanguageName().trimmed().toCaseFolded());
455457
456 if (genericName == languageName) {458 if (genericName == languageName) {
457 if (!languageNames.contains(genericName)) {459 if (!nameCodes.contains(genericName)) {
458 *m_languageLocales += genericLocale;460 *m_languageLocales += genericLocale;
459 languageNames += genericName;461 nameCodes.insert(genericName, i->trimmed());
460 }462 }
461 } else {463 } else {
462 if (!languageNames.contains(languageName)) {464 if (!nameCodes.contains(languageName)) {
463 *m_languageLocales += locale;465 *m_languageLocales += locale;
464 languageNames += languageName;466 nameCodes.insert(languageName, i->trimmed());
465 }467 }
466 }468 }
467 }469 }
@@ -471,9 +473,10 @@
471473
472 for (int i(0); i < m_languageLocales->length(); i++) {474 for (int i(0); i < m_languageLocales->length(); i++) {
473 *m_languageNames += (*m_languageLocales)[i].nativeLanguageName().trimmed();475 *m_languageNames += (*m_languageLocales)[i].nativeLanguageName().trimmed();
474 *m_languageCodes += (*m_languageLocales)[i].name().trimmed();476 *m_languageCodes += nameCodes[(*m_languageNames)[i].toCaseFolded()];
475 (*m_nameIndices)[(*m_languageNames)[i]] = i;477 (*m_nameIndices)[(*m_languageNames)[i]] = i;
476 (*m_codeIndices)[(*m_languageCodes)[i]] = i;478 QString languageCode((*m_languageCodes)[i]);
479 (*m_codeIndices)[languageCode.left(languageCode.indexOf('.'))] = i;
477 }480 }
478 }481 }
479482

Subscribers

People subscribed via source and target branches