From 6b7f2ff8769b6e62825542b3d672c3f3023700d9 Mon Sep 17 00:00:00 2001 From: Jean-Francois Dockes Date: Tue, 17 Nov 2020 17:37:39 +0100 Subject: [PATCH] Extract dark css reading code in separate method for reuse in about widget --- src/qtgui/rclm_wins.cpp | 6 +++++- src/qtgui/rclmain_w.cpp | 25 ++++++++++++++++++------- src/qtgui/rclmain_w.h | 1 + 3 files changed, 24 insertions(+), 8 deletions(-) diff --git a/src/qtgui/rclm_wins.cpp b/src/qtgui/rclm_wins.cpp index 95f41dbf..c1b6a14e 100644 --- a/src/qtgui/rclm_wins.cpp +++ b/src/qtgui/rclm_wins.cpp @@ -331,7 +331,11 @@ void RclMain::showExtIdxDialog() void RclMain::showAboutDialog() { - QString vstring = QString("") + prefs.reslistheadertext + "" + + QString darkcss; + if (prefs.darkMode) { + darkcss = readDarkCSS(); + } + QString vstring = QString("") + darkcss + "" + u8s2qs(Rcl::version_string()) + "
www.recoll.org" + "
www.xapian.org"; diff --git a/src/qtgui/rclmain_w.cpp b/src/qtgui/rclmain_w.cpp index 5d0a59cf..4312ebaa 100644 --- a/src/qtgui/rclmain_w.cpp +++ b/src/qtgui/rclmain_w.cpp @@ -485,6 +485,22 @@ void RclMain::setSynEnabled(bool on) uiprefs->synFileCB->setChecked(prefs.synFileEnable); } +QString RclMain::readDarkCSS() +{ + if (nullptr == theconfig) { + return QString(); + } + string fn = path_cat( + path_cat(theconfig->getDatadir(), "examples"), "recoll-dark.css"); + string data; + string reason; + if (!file_to_string(fn, data, &reason)) { + QMessageBox::warning(0, "Recoll", tr("Could not read: ") + u8s2qs(fn)); + return QString(); + } + return u8s2qs(data); +} + void RclMain::setDarkModeEnabled(bool on) { string fn; @@ -508,13 +524,8 @@ void RclMain::setDarkModeEnabled(bool on) goto unreadable; } prefs.qssFile = u8s2qs(fn); - fn = path_cat(path_cat(datadir, "examples"), "recoll-dark.css"); - string data; - string reason; - if (!file_to_string(fn, data, &reason)) { - goto unreadable; - } - prefs.reslistheadertext = u8s2qs(data); + + prefs.reslistheadertext = readDarkCSS(); } else { prefs.reslistheadertext.clear(); prefs.qssFile.clear(); diff --git a/src/qtgui/rclmain_w.h b/src/qtgui/rclmain_w.h index 0a5cf112..a676dc90 100644 --- a/src/qtgui/rclmain_w.h +++ b/src/qtgui/rclmain_w.h @@ -88,6 +88,7 @@ public: return m_indexerState; } void enableTrayIcon(bool onoff); + QString readDarkCSS(); public slots: virtual void fileExit();