https://bugs.kde.org/show_bug.cgi?id=509902

[email protected] changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Latest Commit|https://invent.kde.org/fram |https://invent.kde.org/fram
                   |eworks/kxmlgui/-/commit/15f |eworks/extra-cmake-modules/
                   |457f5a4d83614d49e7a01ec4092 |-/commit/1bc794fcd741f64c1c
                   |f0f8d07c84                  |aac2d130c6f9a921422854
         Resolution|---                         |FIXED
             Status|ASSIGNED                    |RESOLVED

--- Comment #29 from [email protected] ---
Git commit 1bc794fcd741f64c1caac2d130c6f9a921422854 by Han Young.
Committed on 22/10/2025 at 01:38.
Pushed by hanyoung into branch 'master'.

ECMQmlLoader: generic languages should have lower precedence

In ECMQmlLoader, we convert uiLanguages into locale list. If the
language has country code, we also add the country stripped generic
language **JUST AFTER** the origin language. This behavior is incorrect.

If the $LANGUAGE is pt_BR.UTF-8, the QLocale().uiLanguages() returns
QList("pt_Latn_BR", "pt_BR", "pt_Latn", "pt").

After stripping, the first language "pt_Latn_BR" became "pt",
and "pt" is added immediately behind. The resulting language list then
became [pt, pt_BR] instead of [pt_BR, pt]. **This means users with
language set as Brazilian Portuguese will see the European Portuguese
translations.**

Push the country stripped language code after the same language dialect
to ensure the proper precedence.

M  +25   -5    modules/ECMQmLoader.cpp.in
M  +4    -0    tests/ECMPoQmToolsTest/check.cmake.in
A  +22   -0    tests/ECMPoQmToolsTest/tr_test-po/pt/catalog.po
A  +22   -0    tests/ECMPoQmToolsTest/tr_test-po/pt_BR/catalog.po

https://invent.kde.org/frameworks/extra-cmake-modules/-/commit/1bc794fcd741f64c1caac2d130c6f9a921422854

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to