summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRomain Failliot <romain.failliot@foolstep.com>2021-11-14 04:14:30 +0100
committerRomain Failliot <romain.failliot@foolstep.com>2021-11-14 14:52:55 +0100
commit2e5866147eb24545e597d86f4e6621c2f2c63165 (patch)
treec1ff4011bf80c475a5f23b8d659b4aa5dcbdaafc
parentMerge pull request #7272 from behunin/the-courteous-logger (diff)
downloadyuzu-2e5866147eb24545e597d86f4e6621c2f2c63165.tar
yuzu-2e5866147eb24545e597d86f4e6621c2f2c63165.tar.gz
yuzu-2e5866147eb24545e597d86f4e6621c2f2c63165.tar.bz2
yuzu-2e5866147eb24545e597d86f4e6621c2f2c63165.tar.lz
yuzu-2e5866147eb24545e597d86f4e6621c2f2c63165.tar.xz
yuzu-2e5866147eb24545e597d86f4e6621c2f2c63165.tar.zst
yuzu-2e5866147eb24545e597d86f4e6621c2f2c63165.zip
-rw-r--r--src/yuzu/main.cpp48
-rw-r--r--src/yuzu/uisettings.cpp4
2 files changed, 27 insertions, 25 deletions
diff --git a/src/yuzu/main.cpp b/src/yuzu/main.cpp
index 4e5552d2a..cfda60997 100644
--- a/src/yuzu/main.cpp
+++ b/src/yuzu/main.cpp
@@ -3381,36 +3381,38 @@ void GMainWindow::filterBarSetChecked(bool state) {
}
void GMainWindow::UpdateUITheme() {
- const QString default_icons = QStringLiteral("default");
- const QString& current_theme = UISettings::values.theme;
- const bool is_default_theme = current_theme == QString::fromUtf8(UISettings::themes[0].second);
+ const QString default_theme = QStringLiteral("default");
+ QString current_theme = UISettings::values.theme;
QStringList theme_paths(default_theme_paths);
- if (is_default_theme || current_theme.isEmpty()) {
- const QString theme_uri(QStringLiteral(":default/style.qss"));
+ if (current_theme.isEmpty()) {
+ current_theme = default_theme;
+ }
+
+ if (current_theme != default_theme) {
+ QString theme_uri{QStringLiteral(":%1/style.qss").arg(current_theme)};
QFile f(theme_uri);
- if (f.open(QFile::ReadOnly | QFile::Text)) {
- QTextStream ts(&f);
- qApp->setStyleSheet(ts.readAll());
- setStyleSheet(ts.readAll());
- } else {
- qApp->setStyleSheet({});
- setStyleSheet({});
+ if (!f.open(QFile::ReadOnly | QFile::Text)) {
+ LOG_ERROR(Frontend, "Unable to open style \"{}\", fallback to the default theme",
+ UISettings::values.theme.toStdString());
+ current_theme = default_theme;
}
- QIcon::setThemeName(default_icons);
+ }
+
+ QString theme_uri{QStringLiteral(":%1/style.qss").arg(current_theme)};
+ QFile f(theme_uri);
+ if (f.open(QFile::ReadOnly | QFile::Text)) {
+ QTextStream ts(&f);
+ qApp->setStyleSheet(ts.readAll());
+ setStyleSheet(ts.readAll());
} else {
- const QString theme_uri(QLatin1Char{':'} + current_theme + QStringLiteral("/style.qss"));
- QFile f(theme_uri);
- if (f.open(QFile::ReadOnly | QFile::Text)) {
- QTextStream ts(&f);
- qApp->setStyleSheet(ts.readAll());
- setStyleSheet(ts.readAll());
- } else {
- LOG_ERROR(Frontend, "Unable to set style, stylesheet file not found");
- }
- QIcon::setThemeName(current_theme);
+ LOG_ERROR(Frontend, "Unable to set style \"{}\", stylesheet file not found",
+ UISettings::values.theme.toStdString());
+ qApp->setStyleSheet({});
+ setStyleSheet({});
}
+ QIcon::setThemeName(current_theme);
QIcon::setThemeSearchPaths(theme_paths);
}
diff --git a/src/yuzu/uisettings.cpp b/src/yuzu/uisettings.cpp
index 37499fc85..21683576c 100644
--- a/src/yuzu/uisettings.cpp
+++ b/src/yuzu/uisettings.cpp
@@ -7,8 +7,8 @@
namespace UISettings {
const Themes themes{{
- {"Light", "default"},
- {"Light Colorful", "colorful"},
+ {"Default", "default"},
+ {"Default Colorful", "colorful"},
{"Dark", "qdarkstyle"},
{"Dark Colorful", "colorful_dark"},
{"Midnight Blue", "qdarkstyle_midnight_blue"},