Merge pull request #368 from bobbycar-graz/improvements

This commit is contained in:
CommanderRedYT
2022-10-02 23:07:10 +02:00
committed by GitHub
9 changed files with 43 additions and 6 deletions

View File

@ -1,4 +1,5 @@
set(BOBBY_APP_NAME testdevice)
set(BOBBY_DEFAULT_OTA_NAME testdevice)
add_definitions(
-DUSER_SETUP_LOADED=1

View File

@ -1,4 +1,5 @@
set(BOBBY_APP_NAME testdevice2)
set(BOBBY_DEFAULT_OTA_NAME testdevice2)
add_definitions(
-DUSER_SETUP_LOADED=1

View File

@ -24,6 +24,7 @@ set(headers
actions/modesettingsaction.h
actions/qraction.h
actions/rebootaction.h
actions/resetnvsaction.h
actions/savesettingsaction.h
actions/switchprofileaction.h
actions/tempomatmodeapplycurrentpeedaction.h
@ -278,6 +279,7 @@ set(sources
actions/modesettingsaction.cpp
actions/qraction.cpp
actions/rebootaction.cpp
actions/resetnvsaction.cpp
actions/savesettingsaction.cpp
actions/switchprofileaction.cpp
actions/tempomatmodeapplycurrentpeedaction.cpp

View File

@ -0,0 +1,11 @@
#include "resetnvsaction.h"
// system includes
#include <esp_system.h>
#include <nvs_flash.h>
void ResetNVSAction::triggered()
{
nvs_flash_erase();
esp_restart();
}

View File

@ -0,0 +1,10 @@
#pragma once
// 3rdparty lib includes
#include <actioninterface.h>
class ResetNVSAction : public virtual espgui::ActionInterface
{
public:
void triggered() override;
};

View File

@ -5,12 +5,15 @@
// local includes
#include "actions/rebootaction.h"
#include "actions/resetnvsaction.h"
#include "bobbycheckbox.h"
#include "bobbyerrorhandler.h"
#include "icons/info.h"
#include "icons/reboot.h"
#include "newsettings.h"
namespace {
constexpr char TEXT_RESET_NVS[] = "Reset NVS";
constexpr char TEXT_REBOOT[] = "Reboot";
}
@ -47,6 +50,7 @@ RecoveryMenu::RecoveryMenu()
configs.callForEveryFeature([&](ConfiguredFeatureFlag &feature){
constructMenuItem<BasicFeatureFlagMenuItem>(feature);
});
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_RESET_NVS>, ResetNVSAction, StaticMenuItemIcon<&bobbyicons::info>>>();
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_REBOOT>, RebootAction, StaticMenuItemIcon<&bobbyicons::reboot>>>();
}

View File

@ -101,6 +101,8 @@ extern "C" void app_main()
if (const auto result = configs.init("bobbycar"); result != ESP_OK)
ESP_LOGE(TAG, "config_init_settings() failed with %s", esp_err_to_name(result));
updateRotation();
profileSettings = presets::defaultProfileSettings;
if (settingsPersister.init())

View File

@ -33,6 +33,16 @@ void initScreen()
bootLabel.start();
}
void updateRotation()
{
if (tft.getRotation() != (configs.boardcomputerHardware.flipScreen.value() ? 2 : 0))
{
tft.setRotation(configs.boardcomputerHardware.flipScreen.value() ? 2 : 0);
if (currentDisplay)
currentDisplay->initScreen();
}
}
void updateDisplay()
{
if (currentDisplay)
@ -44,12 +54,7 @@ void updateDisplay()
changeScreenCallback = {};
}
if (tft.getRotation() != (configs.boardcomputerHardware.flipScreen.value() ? 2 : 0))
{
tft.setRotation(configs.boardcomputerHardware.flipScreen.value() ? 2 : 0);
if (currentDisplay)
currentDisplay->initScreen();
}
updateRotation();
if (const int8_t rawButton = rawButtonRequest.load(); rawButton != -1 && currentDisplay)
{

View File

@ -7,4 +7,5 @@ extern espgui::Label bootLabel;
void initScreen();
void updateDisplay();
void updateRotation();
void redrawDisplay();