feat: 'Prefer reduced motion' setting (accessibility / animation opt-out)

Config::reducedMotion (default false = playful animations ON). Surfaced as a
checkbox on first run (wizard PageMenu) and in Settings → Appearance —
unchecked by default, matching the OS 'Reduce Motion' convention. The mining
tab's AnimatedImages now freeze when it's set (MiningBackend exposes it to
mining.qml). Foundation for gating the ambient silliness to come.
This commit is contained in:
jwinterm
2026-08-30 12:36:15 -04:00
parent 0ed8c005c5
commit 7b71f5dc9a
9 changed files with 41 additions and 0 deletions
+6
View File
@@ -139,6 +139,12 @@ void Settings::setupAppearanceTab() {
emit updateBalance();
});
// [Prefer reduced motion] wowlet: gate playful animations (mining tab, loaders, ...)
ui->checkBox_reducedMotion->setChecked(conf()->get(Config::reducedMotion).toBool());
connect(ui->checkBox_reducedMotion, &QCheckBox::toggled, [this](bool toggled){
conf()->set(Config::reducedMotion, toggled);
});
// [Preferred fiat currency]
QStringList availableFiatCurrencies = appData()->prices.rates.keys();
for (const auto &currency : availableFiatCurrencies) {