kossebau added a comment.
@ilic ping? Can you confirm this is correct and by design? Motivation is: `KLocalizedString::setApplicationDomain()` <https://cgit.kde.org/ki18n.git/tree/src/klocalizedstring.cpp#n1257> triggers the creation of the `KLocalizedStringPrivateStatics` instance, which then also reads the currently set env vars to collect the set locales/languages <https://cgit.kde.org/kxmlgui.git/tree/src/kswitchlanguagedialog_p.cpp#n76>. Now KXMLGUI's language switching support for programs injects the override language via `Q_COREAPP_STARTUP_FUNCTION(initializeLanguages)` (see kswitchlanguagedialog_p.cpp <https://cgit.kde.org/kxmlgui.git/tree/src/kswitchlanguagedialog_p.cpp#n44> lines 44ff) by twisting the `LANGUAGE` env var. So for that to work, the `KLocalizedStringPrivateStatics` instance has to be created only _after_ the QCoreApplication constructor is run. A few programs had the order reversed, due to calling `KLocalizedString::setApplicationDomain()` before QApp creation, resulting in the language switching override being ignored and thus broken. REPOSITORY R249 KI18n REVISION DETAIL https://phabricator.kde.org/D8351 To: kossebau, #frameworks, ilic, ltoscano