From 2efbd337bdb7fb84960ffc69222984ef030bb4f1 Mon Sep 17 00:00:00 2001 From: Jared Boone Date: Thu, 20 Aug 2015 17:56:47 -0700 Subject: [PATCH] Provide a way to exit application event loop. --- firmware/application/main.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) 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);