diff --git a/src/citra_qt/main.cpp b/src/citra_qt/main.cpp index 9eac0f40d..e2ce67abf 100644 --- a/src/citra_qt/main.cpp +++ b/src/citra_qt/main.cpp @@ -112,6 +112,9 @@ GMainWindow::GMainWindow() : config(new Config()), emu_thread(nullptr) { ui.setupUi(this); statusBar()->hide(); + default_theme_paths = QIcon::themeSearchPaths(); + UpdateUITheme(); + InitializeWidgets(); InitializeDebugWidgets(); InitializeRecentFileMenuActions(); @@ -130,9 +133,6 @@ GMainWindow::GMainWindow() : config(new Config()), emu_thread(nullptr) { game_list->PopulateAsync(UISettings::values.gamedir, UISettings::values.gamedir_deepscan); - default_theme_paths = QIcon::themeSearchPaths(); - UpdateUITheme(); - // Show one-time "callout" messages to the user ShowCallouts(); @@ -1249,6 +1249,7 @@ void GMainWindow::UpdateUITheme() { QIcon::setThemeName(":/icons/default"); } QIcon::setThemeSearchPaths(theme_paths); + emit UpdateThemedIcons(); } void GMainWindow::LoadTranslation() { diff --git a/src/citra_qt/main.h b/src/citra_qt/main.h index 04fe742ea..c29c0ccfc 100644 --- a/src/citra_qt/main.h +++ b/src/citra_qt/main.h @@ -74,6 +74,8 @@ signals: void UpdateProgress(size_t written, size_t total); void CIAInstallReport(Service::AM::InstallStatus status, QString filepath); void CIAInstallFinished(); + // Signal that tells widgets to update icons to use the current theme + void UpdateThemedIcons(); private: void InitializeWidgets();