Gui: Fix order of stylesheet applying

This commit is contained in:
Kacper Donat
2025-09-07 00:52:05 +02:00
committed by Chris Hennes
parent 08aeb5d65b
commit a09de19764
6 changed files with 13 additions and 42 deletions

View File

@@ -402,14 +402,23 @@ void Application::initStyleParameterManager()
{.name = QT_TR_NOOP("Theme Parameters"),
.options = StyleParameters::ParameterSourceOption::UserEditable});
handlers.addDelayedHandler(
auto reloadStylesheetHandler = handlers.addDelayedHandler(
"BaseApp/Preferences/MainWindow",
{"ThemeStyleParametersFiles", "Theme"},
[themeParametersSource, deduceParametersFilePath, this](ParameterGrp::handle) {
{"ThemeStyleParametersFiles", "Theme", "StyleSheet"},
[themeParametersSource, deduceParametersFilePath, this](ParameterGrp::handle hGrp) {
themeParametersSource->changeFilePath(deduceParametersFilePath());
reloadStyleSheet();
styleParameterManager()->reload();
std::string sheet = hGrp->GetASCII("StyleSheet");
bool tiledBG = hGrp->GetBool("TiledBackground", false);
setStyleSheet(QString::fromStdString(sheet), tiledBG);
});
handlers.addHandler("BaseApp/Preferences/Themes",
{"ThemeAccentColor1", "ThemeAccentColor2", "ThemeAccentColor2"},
reloadStylesheetHandler);
Base::registerServiceImplementation<StyleParameters::ParameterSource>(
new StyleParameters::BuiltInParameterSource({.name = QT_TR_NOOP("Built-in Parameters")}));