Implement UI scaling and more (#501)

**New Features**
 * Runtime font accessors and new symbol fonts for text, launcher, statusbar, and shared icons.
 * Added font height base setting to device.properties
 * Text fonts now have 3 sizes: small, default, large

**Improvements**
 * Renamed `UiScale` to `UiDensity`
 * Statusbar, toolbar and many UI components now compute heights and spacing from fonts/density.
 * SSD1306 initialization sequence refined for more stable startup.
 * Multiple image assets replaced by symbol-font rendering.
 * Many layout improvements related to density, font scaling and icon scaling
 * Updated folder name capitalization for newer style
This commit is contained in:
Ken Van Hoeylandt
2026-02-15 01:41:47 +01:00
committed by GitHub
parent 72c9b2b113
commit 9a11e6f47b
264 changed files with 5923 additions and 494 deletions
+8
View File
@@ -0,0 +1,8 @@
cmake_minimum_required(VERSION 3.20)
file(GLOB_RECURSE SOURCES "source/*.c**")
add_library(platform-posix OBJECT)
target_sources(platform-posix PRIVATE ${SOURCES})
#target_include_directories(platform-posix PUBLIC include/)
target_link_libraries(platform-posix PUBLIC TactilityKernel)
+2
View File
@@ -0,0 +1,2 @@
dependencies:
- TactilityKernel
@@ -0,0 +1,20 @@
#include <stdlib.h>
#if defined(__GLIBC__)
#include <assert.h>
#endif
#include <tactility/freertos/task.h>
#include <tactility/log.h>
#define TAG "freertos"
/**
* Assert implementation as defined in the FreeRTOSConfig.h
*/
void vAssertCalled(unsigned long line, const char* const file) {
LOG_E("Assert triggered at {}:{}", file, line);
#if defined(__GLIBC__)
__assert_fail("assert failed", file, line, "");
#else
abort();
#endif
}
@@ -0,0 +1,25 @@
// SPDX-License-Identifier: Apache-2.0
#include <tactility/module.h>
extern "C" {
static error_t start() {
/* NO-OP for now */
return ERROR_NONE;
}
static error_t stop() {
/* NO-OP for now */
return ERROR_NONE;
}
// The name must be exactly "platform_module"
struct Module platform_module = {
.name = "platform-posix",
.start = start,
.stop = stop,
.symbols = nullptr,
.internal = nullptr
};
}