Ken Van Hoeylandt 86010186d8
Improve Terminal, App List, app starting, and more (#658)
app-module:

- Implement `AppStartContext` to reduce amount of `app_start_` and `app_exec` functions: replace them with `app_start_with_context()`
- Add support for environment variables when starting apps
- Implement support for environment variables for apps

graphics-module:

- Add this new module
- Move font-module code into this module
- Implement pixel_buffer

apps:

- Terminal app: reduce memory usage by only buffering a single row of characters, and try to buffer in IRAM when possible. Implement new pixel_buffer.
- App List: Mark apps as favourite to pin them on top. Use touch or press "x" key.
- App List: Add toolbar button that shows alert dialog with info about using favourites
2026-09-24 00:44:28 +02:00

38 lines
1.3 KiB
C

// SPDX-License-Identifier: Apache-2.0
#include <font/render.h>
#include <graphics/module.h>
#include <graphics/pixel_buffer.h>
static const struct ModuleSymbol SYMBOLS[] = {
// font
DEFINE_MODULE_SYMBOL(font_render_char_pixel_buffer_rgb565),
// pixel_buffer
DEFINE_MODULE_SYMBOL(pixel_buffer_create),
DEFINE_MODULE_SYMBOL(pixel_buffer_create_with_policy),
DEFINE_MODULE_SYMBOL(pixel_buffer_wrap),
DEFINE_MODULE_SYMBOL(pixel_buffer_free),
DEFINE_MODULE_SYMBOL(pixel_buffer_get_format),
DEFINE_MODULE_SYMBOL(pixel_buffer_get_width),
DEFINE_MODULE_SYMBOL(pixel_buffer_get_height),
DEFINE_MODULE_SYMBOL(pixel_buffer_get_stride_bytes),
DEFINE_MODULE_SYMBOL(pixel_buffer_get_data),
DEFINE_MODULE_SYMBOL(pixel_buffer_get_row),
DEFINE_MODULE_SYMBOL(pixel_buffer_clear),
DEFINE_MODULE_SYMBOL(pixel_buffer_msync),
DEFINE_MODULE_SYMBOL(pixel_buffer_set_pixel_rgb565),
DEFINE_MODULE_SYMBOL(pixel_buffer_get_pixel_rgb565),
DEFINE_MODULE_SYMBOL(pixel_buffer_blit),
DEFINE_MODULE_SYMBOL(pixel_buffer_row_stride_bytes),
MODULE_SYMBOL_TERMINATOR,
};
struct Module graphics_module = {
.name = "graphics",
.start = NULL,
.stop = NULL,
.drivers = NULL,
.symbols = SYMBOLS,
.internal = NULL,
};