We didn't care about system default fonts and sizes, we just used the Qt default font.
Due to how QFont is constructed, there was need to split font and font size. Signed-off-by: Anton Lundin <gla...@acc.umu.se> --- linux.c | 3 ++- macos.c | 3 ++- pref.h | 1 + qt-ui/mainwindow.cpp | 5 +++-- subsurfacestartup.c | 1 + windows.c | 3 ++- 6 files changed, 11 insertions(+), 5 deletions(-) diff --git a/linux.c b/linux.c index 346af09..6bfb381 100644 --- a/linux.c +++ b/linux.c @@ -9,7 +9,8 @@ #include <stdio.h> #include <fcntl.h> -const char system_divelist_default_font[] = "Sans 8"; +const char system_divelist_default_font[] = "Sans"; +const int system_divelist_default_font_size = 8; const char *system_default_filename(void) { diff --git a/macos.c b/macos.c index 58619d7..01c3fbf 100644 --- a/macos.c +++ b/macos.c @@ -25,7 +25,8 @@ #define ICON_NAME "Subsurface.icns" #define UI_FONT "Arial 12" -const char system_divelist_default_font[] = "Arial 10"; +const char system_divelist_default_font[] = "Arial"; +const int system_divelist_default_font_size = 10; const char *system_default_filename(void) { diff --git a/pref.h b/pref.h index a5d90a9..3955b88 100644 --- a/pref.h +++ b/pref.h @@ -64,6 +64,7 @@ extern void subsurface_flush_conf(void); extern void subsurface_close_conf(void); extern const char system_divelist_default_font[]; +extern const int system_divelist_default_font_size; extern const char *system_default_filename(); extern void load_preferences(void); diff --git a/qt-ui/mainwindow.cpp b/qt-ui/mainwindow.cpp index 8fd51a5..e77fa6b 100644 --- a/qt-ui/mainwindow.cpp +++ b/qt-ui/mainwindow.cpp @@ -645,8 +645,9 @@ void MainWindow::readSettings() { QSettings s; s.beginGroup("Display"); - QFont defaultFont = s.value("divelist_font", qApp->font()).value<QFont>(); - defaultFont.setPointSizeF(s.value("font_size", qApp->font().pointSizeF()).toFloat()); + QFont defaultFont = QFont(default_prefs.divelist_font); + defaultFont = s.value("divelist_font", defaultFont).value<QFont>(); + defaultFont.setPointSizeF(s.value("font_size", default_prefs.font_size).toFloat()); qApp->setFont(defaultFont); s.endGroup(); diff --git a/subsurfacestartup.c b/subsurfacestartup.c index 3f410af..6d3714b 100644 --- a/subsurfacestartup.c +++ b/subsurfacestartup.c @@ -170,6 +170,7 @@ void setup_system_prefs(void) const char *env; default_prefs.divelist_font = strdup(system_divelist_default_font); + default_prefs.font_size = system_divelist_default_font_size; default_prefs.default_filename = system_default_filename(); env = getenv("LC_MEASUREMENT"); diff --git a/windows.c b/windows.c index 7e3c507..c76a730 100644 --- a/windows.c +++ b/windows.c @@ -10,7 +10,8 @@ #include <dirent.h> #include <zip.h> -const char system_divelist_default_font[] = "Sans 8"; +const char system_divelist_default_font[] = "Sans"; +const int system_divelist_default_font_size = 8; const char *system_default_filename(void) { -- 1.8.3.2 _______________________________________________ subsurface mailing list subsurface@hohndel.org http://lists.hohndel.org/cgi-bin/mailman/listinfo/subsurface