diff options
author | Ivan Solovev <ivan.solovev@qt.io> | 2021-09-14 12:39:41 +0200 |
---|---|---|
committer | Ivan Solovev <ivan.solovev@qt.io> | 2021-09-15 10:29:55 +0200 |
commit | 61343b5a3f10f5b9166729176d4b95a4c538c278 (patch) | |
tree | 1adbfa95019286dffea81995957fd768d7bc6f41 /src/corelib/text/qlocale_win.cpp | |
parent | 05d336620cf87fbffc07f2df15e1ba5aeea7ef71 (diff) |
Teach QLocale::system() to use narrow format
QLocale::system() was not making use of QLocaleFormat::Narrow, always
treating it in the same way as QLocaleFormat::Short.
This patch fixes the issue for day and month names.
The implementation falls back to CLDR if system locale fails to
provide some data.
Pick-to: 6.2
Task-number: QTBUG-84877
Change-Id: Ia37e59dbf02d7a5e230f2767d294b9ab7de37f33
Reviewed-by: MÃ¥rten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Diffstat (limited to 'src/corelib/text/qlocale_win.cpp')
-rw-r--r-- | src/corelib/text/qlocale_win.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/corelib/text/qlocale_win.cpp b/src/corelib/text/qlocale_win.cpp index f3e02c0440..ef41eb6bd2 100644 --- a/src/corelib/text/qlocale_win.cpp +++ b/src/corelib/text/qlocale_win.cpp @@ -757,8 +757,11 @@ QVariant QSystemLocale::query(QueryType type, QVariant in) const return d->dayName(in.toInt(), QLocale::LongFormat); case DayNameShort: return d->dayName(in.toInt(), QLocale::ShortFormat); + case DayNameNarrow: + return d->dayName(in.toInt(), QLocale::NarrowFormat); case StandaloneDayNameLong: case StandaloneDayNameShort: + case StandaloneDayNameNarrow: // Windows does not provide standalone day names, so fall back to CLDR return QVariant(); case MonthNameLong: @@ -769,6 +772,10 @@ QVariant QSystemLocale::query(QueryType type, QVariant in) const return d->monthName(in.toInt(), QLocale::ShortFormat); case StandaloneMonthNameShort: return d->standaloneMonthName(in.toInt(), QLocale::ShortFormat); + case MonthNameNarrow: + case StandaloneMonthNameNarrow: + // Windows provides no narrow month names, so we fall back to CLDR + return QVariant(); case DateToStringShort: return d->toString(in.toDate(), QLocale::ShortFormat); case DateToStringLong: |