From: Christoph Cullmann Date: Sun, 12 May 2024 21:39:31 +0000 (+0200) Subject: use proper icon set and style outside of Plasma X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/commitdiff_plain/a55c467fbb31d822d89722812388425327830377 use proper icon set and style outside of Plasma the framework functions used will setup the proper icon set and re-coloring and style to use details see https://invent.kde.org/frameworks/kiconthemes/-/issues/3 --- diff --git a/src/main.cpp b/src/main.cpp index 207a12116..6df53b62e 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -22,6 +22,7 @@ #include #include #include +#include #include #include @@ -29,6 +30,11 @@ #include #endif +#define HAVE_STYLE_MANAGER __has_include() +#if HAVE_STYLE_MANAGER +#include +#endif + #include #include #include @@ -69,6 +75,13 @@ int main(int argc, char **argv) } #endif + /** + * trigger initialisation of proper icon theme + */ +#if KICONTHEMES_VERSION >= QT_VERSION_CHECK(6, 3, 0) + KIconTheme::initTheme(); +#endif + /** * enable high dpi support */ @@ -79,8 +92,19 @@ int main(int argc, char **argv) QApplication app(argc, argv); app.setWindowIcon(QIcon::fromTheme(QStringLiteral("system-file-manager"), app.windowIcon())); -#if defined(Q_OS_WIN) || defined(Q_OS_MACOS) +#if HAVE_STYLE_MANAGER + /** + * trigger initialisation of proper application style + */ + KStyleManager::initStyle(); +#else + /** + * For Windows and macOS: use Breeze if available + * Of all tested styles that works the best for us + */ +#if defined(Q_OS_MACOS) || defined(Q_OS_WIN) QApplication::setStyle(QStringLiteral("breeze")); +#endif #endif KCrash::initialize();