feat: add sleep screen selection

This commit is contained in:
dpoulter 2026-01-21 20:36:51 +02:00
parent a481ec1e1c
commit ab906c499b

View File

@ -75,54 +75,77 @@ bool CrossPointSettings::loadFromFile() {
// load settings that exist (support older files with fewer fields) // load settings that exist (support older files with fewer fields)
uint8_t settingsRead = 0; uint8_t settingsRead = 0;
do { do {
Serial.printf("settingsRead: %d, fileSettingsCount: %d\n", settingsRead, fileSettingsCount);
serialization::readPod(inputFile, sleepScreen); serialization::readPod(inputFile, sleepScreen);
Serial.printf("sleepScreen: %d\n", sleepScreen);
if (++settingsRead >= fileSettingsCount) break; if (++settingsRead >= fileSettingsCount) break;
serialization::readPod(inputFile, extraParagraphSpacing); serialization::readPod(inputFile, extraParagraphSpacing);
if (++settingsRead >= fileSettingsCount) break; if (++settingsRead >= fileSettingsCount) break;
Serial.printf("extraParagraphSpacing: %d\n", extraParagraphSpacing);
serialization::readPod(inputFile, shortPwrBtn); serialization::readPod(inputFile, shortPwrBtn);
if (++settingsRead >= fileSettingsCount) break; if (++settingsRead >= fileSettingsCount) break;
Serial.printf("shortPwrBtn: %d\n", shortPwrBtn);
serialization::readPod(inputFile, statusBar); serialization::readPod(inputFile, statusBar);
if (++settingsRead >= fileSettingsCount) break; if (++settingsRead >= fileSettingsCount) break;
Serial.printf("statusBar: %d\n", statusBar);
serialization::readPod(inputFile, orientation); serialization::readPod(inputFile, orientation);
if (++settingsRead >= fileSettingsCount) break; if (++settingsRead >= fileSettingsCount) break;
Serial.printf("orientation: %d\n", orientation);
serialization::readPod(inputFile, frontButtonLayout); serialization::readPod(inputFile, frontButtonLayout);
if (++settingsRead >= fileSettingsCount) break; if (++settingsRead >= fileSettingsCount) break;
Serial.printf("frontButtonLayout: %d\n", frontButtonLayout);
serialization::readPod(inputFile, sideButtonLayout); serialization::readPod(inputFile, sideButtonLayout);
if (++settingsRead >= fileSettingsCount) break; if (++settingsRead >= fileSettingsCount) break;
Serial.printf("sideButtonLayout: %d\n", sideButtonLayout);
serialization::readPod(inputFile, fontFamily); serialization::readPod(inputFile, fontFamily);
if (++settingsRead >= fileSettingsCount) break; if (++settingsRead >= fileSettingsCount) break;
Serial.printf("fontFamily: %d\n", fontFamily);
serialization::readPod(inputFile, fontSize); serialization::readPod(inputFile, fontSize);
if (++settingsRead >= fileSettingsCount) break; if (++settingsRead >= fileSettingsCount) break;
Serial.printf("fontSize: %d\n", fontSize);
serialization::readPod(inputFile, lineSpacing); serialization::readPod(inputFile, lineSpacing);
if (++settingsRead >= fileSettingsCount) break; if (++settingsRead >= fileSettingsCount) break;
Serial.printf("lineSpacing: %d\n", lineSpacing);
serialization::readPod(inputFile, paragraphAlignment); serialization::readPod(inputFile, paragraphAlignment);
if (++settingsRead >= fileSettingsCount) break; if (++settingsRead >= fileSettingsCount) break;
serialization::readPod(inputFile, sleepTimeout); Serial.printf("paragraphAlignment: %d\n", paragraphAlignment);
serialization::readPod(inputFile, sleepTimeout);
if (++settingsRead >= fileSettingsCount) break; if (++settingsRead >= fileSettingsCount) break;
Serial.printf("sleepTimeout: %d\n", sleepTimeout);
serialization::readPod(inputFile, refreshFrequency); serialization::readPod(inputFile, refreshFrequency);
if (++settingsRead >= fileSettingsCount) break; if (++settingsRead >= fileSettingsCount) break;
Serial.printf("refreshFrequency: %d\n", refreshFrequency);
serialization::readPod(inputFile, screenMargin); serialization::readPod(inputFile, screenMargin);
if (++settingsRead >= fileSettingsCount) break; if (++settingsRead >= fileSettingsCount) break;
Serial.printf("screenMargin: %d\n", screenMargin);
serialization::readPod(inputFile, sleepScreenCoverMode); serialization::readPod(inputFile, sleepScreenCoverMode);
if (++settingsRead >= fileSettingsCount) break; if (++settingsRead >= fileSettingsCount) break;
Serial.printf("sleepScreenCoverMode: %d\n", sleepScreenCoverMode);
{ {
std::string urlStr; std::string urlStr;
serialization::readString(inputFile, urlStr); serialization::readString(inputFile, urlStr);
strncpy(opdsServerUrl, urlStr.c_str(), sizeof(opdsServerUrl) - 1); strncpy(opdsServerUrl, urlStr.c_str(), sizeof(opdsServerUrl) - 1);
opdsServerUrl[sizeof(opdsServerUrl) - 1] = '\0'; opdsServerUrl[sizeof(opdsServerUrl) - 1] = '\0';
} }
if (++settingsRead >= fileSettingsCount) break;
Serial.printf("textAntiAliasing: %d\n", textAntiAliasing);
serialization::readPod(inputFile, textAntiAliasing); serialization::readPod(inputFile, textAntiAliasing);
if (++settingsRead >= fileSettingsCount) break; if (++settingsRead >= fileSettingsCount) break;
Serial.printf("hideBatteryPercentage: %d\n", hideBatteryPercentage);
serialization::readPod(inputFile, hideBatteryPercentage); serialization::readPod(inputFile, hideBatteryPercentage);
if (++settingsRead >= fileSettingsCount) break; if (++settingsRead >= fileSettingsCount) break;
Serial.printf("longPressChapterSkip: %d\n", longPressChapterSkip);
serialization::readPod(inputFile, longPressChapterSkip); serialization::readPod(inputFile, longPressChapterSkip);
if (++settingsRead >= fileSettingsCount) break; if (++settingsRead >= fileSettingsCount) break;
Serial.printf("selectedSleepBmp: %s\n", selectedSleepBmp);
{ {
std::string bmpStr; std::string bmpStr;
serialization::readString(inputFile, bmpStr); serialization::readString(inputFile, bmpStr);
strncpy(selectedSleepBmp, bmpStr.c_str(), sizeof(selectedSleepBmp) - 1); strncpy(selectedSleepBmp, bmpStr.c_str(), sizeof(selectedSleepBmp) - 1);
selectedSleepBmp[sizeof(selectedSleepBmp) - 1] = '\0'; selectedSleepBmp[sizeof(selectedSleepBmp) - 1] = '\0';
} }
if (++settingsRead >= fileSettingsCount) break;
Serial.printf("settingsRead: %d, fileSettingsCount: %d\n", settingsRead, fileSettingsCount);
} while (false); } while (false);
inputFile.close(); inputFile.close();