advanced lock

This commit is contained in:
CommanderRedYT
2021-12-17 22:40:08 +01:00
parent bcfbb98362
commit b48648f3e2
3 changed files with 24 additions and 10 deletions

View File

@@ -5,6 +5,7 @@
#include <screenmanager.h> #include <screenmanager.h>
// local includes // local includes
#include "displays/menus/mainmenu.h"
#include "displays/statusdisplay.h" #include "displays/statusdisplay.h"
#include "displays/menus/boardcomputerhardwaresettingsmenu.h" #include "displays/menus/boardcomputerhardwaresettingsmenu.h"
@@ -241,6 +242,12 @@ void CalibrateDisplay::back()
case Status::Begin: case Status::Begin:
if (m_bootup) if (m_bootup)
espgui::switchScreen<StatusDisplay>(); espgui::switchScreen<StatusDisplay>();
else if (settings.lockscreen.keepLockedAfterReboot && settings.lockscreen.locked)
{
espgui::switchScreen<MainMenu>();
settings.lockscreen.locked = false;
saveSettings();
}
else else
espgui::switchScreen<BoardcomputerHardwareSettingsMenu>(); espgui::switchScreen<BoardcomputerHardwareSettingsMenu>();
break; break;

View File

@@ -10,6 +10,7 @@
#include "texts.h" #include "texts.h"
#include "buttons.h" #include "buttons.h"
#include "displays/menus/mainmenu.h" #include "displays/menus/mainmenu.h"
#include "displays/calibratedisplay.h"
void Lockscreen::start() void Lockscreen::start()
{ {
@@ -78,6 +79,9 @@ void Lockscreen::redraw()
{ {
if (m_numbers == settings.lockscreen.pin) if (m_numbers == settings.lockscreen.pin)
{ {
if (!gas || !brems || *gas > 200.f || *brems > 200.f)
espgui::switchScreen<CalibrateDisplay>(true);
else
espgui::switchScreen<MainMenu>(); espgui::switchScreen<MainMenu>();
#ifdef LOCKSCREEN_PLUGIN #ifdef LOCKSCREEN_PLUGIN
#pragma message "Activating Lockscreen Plugin" #pragma message "Activating Lockscreen Plugin"
@@ -135,11 +139,14 @@ void Lockscreen::stop()
profileButtonDisabled = false; profileButtonDisabled = false;
isLocked = false; isLocked = false;
if (!(!gas || !brems || *gas > 200.f || *brems > 200.f))
{
if (settings.lockscreen.keepLockedAfterReboot && settings.lockscreen.locked) if (settings.lockscreen.keepLockedAfterReboot && settings.lockscreen.locked)
{ {
settings.lockscreen.locked = false; settings.lockscreen.locked = false;
saveSettings(); saveSettings();
} }
}
} }
void Lockscreen::confirm() void Lockscreen::confirm()

View File

@@ -234,15 +234,15 @@ extern "C" void app_main()
switchScreen<DPad6WireDebugDisplay>(); switchScreen<DPad6WireDebugDisplay>();
#else #else
if (!gas || !brems || *gas > 200.f || *brems > 200.f)
espgui::switchScreen<CalibrateDisplay>(true);
else
{
if (settings.lockscreen.keepLockedAfterReboot && settings.lockscreen.locked) if (settings.lockscreen.keepLockedAfterReboot && settings.lockscreen.locked)
{ {
espgui::switchScreen<Lockscreen>(); espgui::switchScreen<Lockscreen>();
} }
else else
{
if (!gas || !brems || *gas > 200.f || *brems > 200.f)
espgui::switchScreen<CalibrateDisplay>(true);
else
{ {
espgui::switchScreen<StatusDisplay>(); espgui::switchScreen<StatusDisplay>();
} }