From afee4d54fe0d99ee1b3bd7363a0a306be3dd5ac6 Mon Sep 17 00:00:00 2001 From: Restia-Ashbell <107416976+Restia-Ashbell@users.noreply.github.com> Date: Sat, 19 Apr 2025 17:21:50 +0800 Subject: [PATCH] fix: preserve font size when changing font (#369) --- src/ui/mainwindow.cpp | 4 +++- src/ui/setting/dialog_basic_settings.cpp | 6 ++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/ui/mainwindow.cpp b/src/ui/mainwindow.cpp index 8e07e44..d41b891 100644 --- a/src/ui/mainwindow.cpp +++ b/src/ui/mainwindow.cpp @@ -147,7 +147,9 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWi DS_cores); if (!NekoGui::dataStore->font.isEmpty()) { - qApp->setFont(NekoGui::dataStore->font); + auto font = qApp->font(); + font.setFamily(NekoGui::dataStore->font); + qApp->setFont(font); } if (NekoGui::dataStore->font_size != 0) { auto font = qApp->font(); diff --git a/src/ui/setting/dialog_basic_settings.cpp b/src/ui/setting/dialog_basic_settings.cpp index 12f3191..8735dd2 100644 --- a/src/ui/setting/dialog_basic_settings.cpp +++ b/src/ui/setting/dialog_basic_settings.cpp @@ -52,9 +52,11 @@ DialogBasicSettings::DialogBasicSettings(QWidget *parent) connect(ui->language, &QComboBox::currentIndexChanged, this, [=](int index) { CACHE.needRestart = true; }); - connect(ui->font, &QComboBox::currentTextChanged, this, [=](const QString &font) { + connect(ui->font, &QComboBox::currentTextChanged, this, [=](const QString &fontName) { + auto font = qApp->font(); + font.setFamily(fontName); qApp->setFont(font); - NekoGui::dataStore->font = font; + NekoGui::dataStore->font = fontName; NekoGui::dataStore->Save(); adjustSize(); });