diff options
author | bunnei <bunneidev@gmail.com> | 2021-11-25 01:52:48 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-11-25 01:52:48 -0800 |
commit | 06ad463ec868878f3fb0fc0b23bfb0dbbb725d57 (patch) | |
tree | f65f6aa3134ee6e976047acd7704b19ee0b3343e /src/yuzu/main.cpp | |
parent | f078d3d212a4b272012695762f3ce62eaa0db2ab (diff) | |
parent | 2e5866147eb24545e597d86f4e6621c2f2c63165 (diff) |
Merge pull request #7330 from MightyCreak/simplify-theme-selection
Replace "Light" theme by "Default"
Diffstat (limited to 'src/yuzu/main.cpp')
-rw-r--r-- | src/yuzu/main.cpp | 48 |
1 files changed, 25 insertions, 23 deletions
diff --git a/src/yuzu/main.cpp b/src/yuzu/main.cpp index 88e84e8f7..6a070934d 100644 --- a/src/yuzu/main.cpp +++ b/src/yuzu/main.cpp @@ -3472,36 +3472,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); } |