diff --git a/firmware/application/main.cpp b/firmware/application/main.cpp index 815ca249..3a6e4d11 100755 --- a/firmware/application/main.cpp +++ b/firmware/application/main.cpp @@ -67,18 +67,23 @@ public: } void run() { - while(true) { + while(is_running) { const auto events = wait(); dispatch(events); } } + void request_stop() { + is_running = false; + } + private: touch::Manager touch_manager; ui::Widget* const top_widget; ui::Painter& painter; ui::Context& context; uint32_t encoder_last = 0; + bool is_running = true; eventmask_t wait() { return chEvtWaitAny(ALL_EVENTS);