Merge pull request #138 from airgradienthq/hotfix/ledbar-flickers

Fix LED bar flickers
This commit is contained in:
Phat Nguyen
2024-05-29 08:01:05 +07:00
committed by GitHub
5 changed files with 41 additions and 12 deletions

View File

@ -372,6 +372,7 @@ bool Configuration::parse(String data, bool isLocal) {
}
}
_ledBarModeChanged = false;
if (JSON.typeof_(root[jprop_ledBarMode]) == "string") {
String mode = root[jprop_ledBarMode];
if (mode == getLedBarModeName(LedBarMode::LedBarModeCO2) ||
@ -380,6 +381,7 @@ bool Configuration::parse(String data, bool isLocal) {
String oldMode = jconfig[jprop_ledBarMode];
if (mode != oldMode) {
jconfig[jprop_ledBarMode] = mode;
_ledBarModeChanged = true;
changed = true;
}
} else {
@ -559,6 +561,7 @@ bool Configuration::parse(String data, bool isLocal) {
}
}
ledBarBrightnessChanged = false;
if (JSON.typeof_(root[jprop_ledBarBrightness]) == "number") {
int value = root[jprop_ledBarBrightness];
int oldValue = jconfig[jprop_ledBarBrightness];
@ -1147,6 +1150,12 @@ void Configuration::setOfflineModeWithoutSave(bool offline) {
_offlineMode = offline;
}
bool Configuration::isLedBarModeChanged(void) {
bool changed = _ledBarModeChanged;
_ledBarModeChanged = false;
return changed;
}
bool Configuration::isDisplayBrightnessChanged(void) {
bool changed = displayBrightnessChanged;
displayBrightnessChanged = false;