From 87a96bcff75a0ea22fac8d4343e12c8c17763050 Mon Sep 17 00:00:00 2001 From: "Ben V. Brown" Date: Sun, 12 Sep 2021 19:06:50 +1000 Subject: [PATCH] Fix settings bug --- source/Core/Src/Settings.cpp | 4 ++-- source/Core/Src/gui.cpp | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/source/Core/Src/Settings.cpp b/source/Core/Src/Settings.cpp index 5098b84c..2449930c 100644 --- a/source/Core/Src/Settings.cpp +++ b/source/Core/Src/Settings.cpp @@ -139,7 +139,7 @@ uint16_t getSettingValue(const enum SettingsOptions option) { return systemSetti bool nextSettingValue(const enum SettingsOptions option) { const auto constants = settingsConstants[(int)option]; - if (systemSettings.settingsValues[(int)option] == (constants.max - constants.increment)) { + if (systemSettings.settingsValues[(int)option] >= (constants.max - constants.increment)) { systemSettings.settingsValues[(int)option] = constants.min; } else { systemSettings.settingsValues[(int)option] += constants.increment; @@ -150,7 +150,7 @@ bool nextSettingValue(const enum SettingsOptions option) { bool prevSettingValue(const enum SettingsOptions option) { const auto constants = settingsConstants[(int)option]; int value = systemSettings.settingsValues[(int)option]; - if (value == constants.min) { + if (value <= constants.min) { value = constants.max; } else { value -= constants.increment; diff --git a/source/Core/Src/gui.cpp b/source/Core/Src/gui.cpp index e7d30373..6a198790 100644 --- a/source/Core/Src/gui.cpp +++ b/source/Core/Src/gui.cpp @@ -787,6 +787,7 @@ static bool settings_displayBrightnessLevel(void) { OLED::drawArea(0, 0, 16, 16, brightnessIcon); OLED::setCursor(5 * FONT_12_WIDTH - 2, 0); OLED::printNumber(getSettingValue(SettingsOptions::OLEDContrast), 3, FontStyle::LARGE); + OLED::setContrast(getSettingValue(SettingsOptions::OLEDContrast)); return false; } @@ -794,6 +795,7 @@ static bool settings_displayInvertColor(void) { OLED::drawArea(0, 0, 24, 16, invertDisplayIcon); OLED::setCursor(7 * FONT_12_WIDTH - 2, 0); OLED::drawCheckbox(getSettingValue(SettingsOptions::OLEDInversion)); + OLED::setInverseDisplay(getSettingValue(SettingsOptions::OLEDInversion)); return false; }