diff options
author | liamwhite <liamwhite@users.noreply.github.com> | 2022-10-07 17:39:39 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-10-07 17:39:39 -0400 |
commit | 972b93bf00a8dc6f0625ee1568f380f07908ef75 (patch) | |
tree | 276785129f4214c30f1a1e8b1b93cbdc556eebb2 /src | |
parent | b8777b6653fc6d07677130b7300bf8bd8a3cbc08 (diff) | |
parent | 1dba5fab626b2b441d069a668fd148232384da14 (diff) |
Merge pull request #8807 from Docteh/default_fonts
Qt: work around Qt5's font choice for Chinese (in Windows)
Diffstat (limited to 'src')
-rw-r--r-- | src/yuzu/main.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/yuzu/main.cpp b/src/yuzu/main.cpp index 4146ebc2c..f45a25410 100644 --- a/src/yuzu/main.cpp +++ b/src/yuzu/main.cpp @@ -262,6 +262,18 @@ static QString PrettyProductName() { return QSysInfo::prettyProductName(); } +#ifdef _WIN32 +static void OverrideWindowsFont() { + // Qt5 chooses these fonts on Windows and they have fairly ugly alphanumeric/cyrllic characters + // Asking to use "MS Shell Dlg 2" gives better other chars while leaving the Chinese Characters. + const QString startup_font = QApplication::font().family(); + const QStringList ugly_fonts = {QStringLiteral("SimSun"), QStringLiteral("PMingLiU")}; + if (ugly_fonts.contains(startup_font)) { + QApplication::setFont(QFont(QStringLiteral("MS Shell Dlg 2"), 9, QFont::Normal)); + } +} +#endif + bool GMainWindow::CheckDarkMode() { #ifdef __linux__ const QPalette test_palette(qApp->palette()); @@ -4137,6 +4149,10 @@ int main(int argc, char* argv[]) { QCoreApplication::setAttribute(Qt::AA_DontCheckOpenGLContextThreadAffinity); QApplication app(argc, argv); +#ifdef _WIN32 + OverrideWindowsFont(); +#endif + // Workaround for QTBUG-85409, for Suzhou numerals the number 1 is actually \u3021 // so we can see if we get \u3008 instead // TL;DR all other number formats are consecutive in unicode code points |