From 2f4b6cfa8d8262ba356361b4bb17f2534d831831 Mon Sep 17 00:00:00 2001 From: Saghm Rossi Date: Thu, 18 Jun 2026 19:37:39 -0400 Subject: utilize font size settings --- src/src/moapplication.cpp | 10 +++++++++- src/src/settingsdialogtheme.cpp | 15 +++++++++++++++ src/src/settingsdialogtheme.h | 1 + 3 files changed, 25 insertions(+), 1 deletion(-) diff --git a/src/src/moapplication.cpp b/src/src/moapplication.cpp index d7262b7..4b1ee86 100644 --- a/src/src/moapplication.cpp +++ b/src/src/moapplication.cpp @@ -764,8 +764,13 @@ bool MOApplication::setStyleFile(const QString& styleName) const QString fontFamily = m_settings != nullptr ? m_settings->interface().fontFamily() : QString(); + const int fontSize = + m_settings != nullptr ? m_settings->interface().qssFontSize() : 0; QFont appFont = QApplication::font(); appFont.setFamily(!fontFamily.isEmpty() ? fontFamily : m_defaultFontFamily); + if (fontSize > 0) { + appFont.setPixelSize(fontSize); + } QApplication::setFont(appFont); } return true; @@ -1058,11 +1063,14 @@ void MOApplication::updateStyle(const QString& fileName) } } - // Apply user's font family override (or fall back to bundled DejaVu Sans) + // Apply user's font family/size override (or fall back to bundled DejaVu Sans) const QString fontFamily = m_settings != nullptr ? m_settings->interface().fontFamily() : QString(); QFont appFont = QApplication::font(); appFont.setFamily(!fontFamily.isEmpty() ? fontFamily : m_defaultFontFamily); + if (qssFontSize > 0) { + appFont.setPixelSize(qssFontSize); + } QApplication::setFont(appFont); } diff --git a/src/src/settingsdialogtheme.cpp b/src/src/settingsdialogtheme.cpp index 2665298..951e997 100644 --- a/src/src/settingsdialogtheme.cpp +++ b/src/src/settingsdialogtheme.cpp @@ -8,6 +8,7 @@ #include "fluorinepaths.h" #include +#include #include #include @@ -20,9 +21,14 @@ ThemeSettingsTab::ThemeSettingsTab(Settings& s, SettingsDialog& d) : SettingsTab addStyles(); selectStyle(); selectQssFontSize(); + updateDefaultFontSizeHint(); populateFontFamilies(); selectFontFamily(); + QObject::connect(ui->styleBox, &QComboBox::currentIndexChanged, [&] { + updateDefaultFontSizeHint(); + }); + // colors ui->colorTable->load(s); @@ -122,6 +128,15 @@ void ThemeSettingsTab::selectQssFontSize() ui->qssFontSizeSpinBox->setValue(settings().interface().qssFontSize()); } +void ThemeSettingsTab::updateDefaultFontSizeHint() +{ + int px = QFontInfo(QApplication::font()).pixelSize(); + if (px > 0) { + ui->qssFontSizeSpinBox->setSpecialValueText( + QStringLiteral("Default (%1 px)").arg(px)); + } +} + void ThemeSettingsTab::populateFontFamilies() { ui->fontFamilyCombo->addItem("Default (DejaVu Sans)", QString()); diff --git a/src/src/settingsdialogtheme.h b/src/src/settingsdialogtheme.h index 538ea36..037c6a1 100644 --- a/src/src/settingsdialogtheme.h +++ b/src/src/settingsdialogtheme.h @@ -19,6 +19,7 @@ private: void selectQssFontSize(); void populateFontFamilies(); void selectFontFamily(); + void updateDefaultFontSizeHint(); static void onExploreStyles(); }; -- cgit v1.3.1