diff --git a/main/apps/app_setup/app_setup.cpp b/main/apps/app_setup/app_setup.cpp index 28c98af5..133f28ae 100644 --- a/main/apps/app_setup/app_setup.cpp +++ b/main/apps/app_setup/app_setup.cpp @@ -55,6 +55,11 @@ void AppSetup::onOpen() _destroy_menu = true; _worker = std::make_unique(); }}, + {"Wi-Fi", + [&]() { + _destroy_menu = true; + _worker = std::make_unique(); + }}, }, }, { diff --git a/main/apps/app_setup/workers/device.cpp b/main/apps/app_setup/workers/device.cpp index 0a7a9119..0ada1a5b 100644 --- a/main/apps/app_setup/workers/device.cpp +++ b/main/apps/app_setup/workers/device.cpp @@ -9,6 +9,7 @@ #include #include #include +#include #include using namespace smooth_ui_toolkit::lvgl_cpp; @@ -228,6 +229,160 @@ class ButtonWorker::ButtonConfigView { bool _save_requested = false; }; +class WifiWorker::WifiConfigView { +public: + explicit WifiConfigView(const Hal::WifiStatus& initialStatus) + { + _panel = std::make_unique(lv_screen_active()); + _panel->align(LV_ALIGN_CENTER, 0, 0); + _panel->setSize(466, 466); + _panel->setRadius(0); + _panel->setBorderWidth(0); + _panel->setPaddingAll(0); + _panel->setBgColor(lv_color_hex(0x000000)); + _panel->setBgOpa(LV_OPA_COVER); + _panel->removeFlag(LV_OBJ_FLAG_SCROLLABLE); + + _title_label = std::make_unique