# HG changeset patch # User Ideenmodellierer # Date 1615495423 -3600 # Node ID f735f1123526feb71ca602d7cb5724984dcd3808 # Parent 13ded99ecd56698857691ed9188e1ae8c32dc12f Development bugfix Viewport settings: Settings of the viewport have been reset after every update. Root cause: plausibility check value has not been adapted to latest implementation. In addition settings for frame have been overwritten while focus was changed because of an invalid and combination. Both issues have been solved diff -r 13ded99ecd56 -r f735f1123526 Common/Inc/settings.h --- a/Common/Inc/settings.h Thu Feb 25 12:20:43 2021 +0100 +++ b/Common/Inc/settings.h Thu Mar 11 21:43:43 2021 +0100 @@ -69,7 +69,7 @@ #define PRESSURE_OFFSET_LIMIT_MBAR 50 #define MAX_COMPASS_COMP (2u) -#define MAX_VIEWPORT_MODE (0x1F) +#define MAX_VIEWPORT_MODE (0x7F) typedef enum { diff -r 13ded99ecd56 -r f735f1123526 Discovery/Src/tMenuEditCustom.c --- a/Discovery/Src/tMenuEditCustom.c Thu Feb 25 12:20:43 2021 +0100 +++ b/Discovery/Src/tMenuEditCustom.c Thu Mar 11 21:43:43 2021 +0100 @@ -709,9 +709,9 @@ uint8_t OnAction_CViewPortLayout(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action) { SSettings* pSettings = settingsGetPointer(); - if(pSettings->viewPortMode >> 4 != 0) + if((pSettings->viewPortMode >> 4) & 0x10 != 0) { - pSettings->viewPortMode &= 0x0F; + pSettings->viewPortMode &= 0xEF; /* 1110 1111 */ } else { @@ -772,7 +772,7 @@ { newValue = 0; } - pSettings->viewPortMode &= 0x9F; + pSettings->viewPortMode &= 0x9F; /* 1001 1111 */ pSettings->viewPortMode |= (newValue << 5); return UPDATE_DIVESETTINGS; }