mirror of
https://github.com/ByteWelder/Tactility.git
synced 2026-10-17 10:55:06 +00:00
Graphics & rendering - Implement `binfont-module` to generate bitmap fonts on the device itself - Remove lodepng support from LVGL library and create `Modules/lodepng-module` to make the feature re-usable in non-LVGL apps too. Add binding functions for LVGL support. - Implement large icons for boot screen (Tactility and USB logos) - Remove unused asset files in `Data/` Boot - Split up `Tactility.cpp` and its `run()` function into various `Init*.cpp` files. - Re-implement `Boot.cpp` app as non-LVGL app - Boot app now has a `BootSequence.cpp` for the init code. - LVGL is now started when the Boot app finishes - Move more init logic into Boot app BLE - Don't allocate scan result buffers unless BLE is on - Allocate scan results in external memory if possible UX & UI - USB Settings app: remove border from the button container
42 lines
1006 B
C++
42 lines
1006 B
C++
#include <Tactility/MainDispatcher.h>
|
|
#include <Tactility/TactilityPrivate.h>
|
|
|
|
// Implements the deprecated MainDispatcher API
|
|
#pragma GCC diagnostic push
|
|
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
|
|
|
|
namespace tt {
|
|
|
|
static DispatcherHandle_t mainDispatcherHandle = dispatcher_alloc();
|
|
|
|
namespace {
|
|
|
|
void mainDispatcherTrampoline(void* context) {
|
|
auto* function = static_cast<MainDispatcher::Function*>(context);
|
|
(*function)();
|
|
delete function;
|
|
}
|
|
|
|
} // namespace
|
|
|
|
bool MainDispatcher::dispatch(Function function, TickType_t timeout) const {
|
|
auto* boxed = new Function(std::move(function));
|
|
if (dispatcher_dispatch_timed(handle, boxed, mainDispatcherTrampoline, timeout) != ERROR_NONE) {
|
|
delete boxed;
|
|
return false;
|
|
}
|
|
return true;
|
|
}
|
|
|
|
MainDispatcher getMainDispatcher() {
|
|
return MainDispatcher(mainDispatcherHandle);
|
|
}
|
|
|
|
DispatcherHandle_t getMainDispatcherHandle() {
|
|
return mainDispatcherHandle;
|
|
}
|
|
|
|
} // namespace
|
|
|
|
#pragma GCC diagnostic pop
|