mirror of
https://github.com/MarekZegare4/MeshCore-Solo.git
synced 2026-10-13 17:11:57 +00:00
Fonts: Noto Sans generated with lv_font_conv (ui-lvgl/fonts/generate.sh, OFL) replaces ASCII-only Montserrat: European Latin (Latin-1, Extended-A/B), Greek, Cyrillic + supplement, typographic punctuation, currency, LVGL symbols + globe; 12/14/16/20 px, clock 40 px digits only (RLE, so LV_USE_FONT_COMPRESSED is on). Keyboard (ui-lvgl/Keyboard.h): one layout per script (Latin QWERTY, Cyrillic, Greek) picked by the same keyboard_main/alt_alphabet prefs as ui-new, globe key to switch, hold a key for its variants in a popup above it, one-shot shift, symbols page; compose limit counted in UTF-8 bytes. First Settings screen (Keyboard: Main / Additional). Long-press variants and UTF-8 case mapping move to ui-core/KeyboardData.h and are shared with ui-new, whose Hold-Enter accents gain Romanian, Turkish, Hungarian, Baltic and Icelandic letters (and ș/ț, Ukrainian / Serbian letters now capitalise). Verified on L2 hardware. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
32 lines
1.4 KiB
C++
32 lines
1.4 KiB
C++
#pragma once
|
|
// Design tokens for ui-lvgl — the one place colours, spacing and type live.
|
|
// First colour take on the "Amber Trace" direction: amber on near-black.
|
|
|
|
namespace theme {
|
|
// Colours (0xRRGGBB)
|
|
static const uint32_t BG = 0x0B0B0D; // screen background
|
|
static const uint32_t SURFACE = 0x17171B; // cards, rows, bubbles (incoming)
|
|
static const uint32_t SURFACE_2 = 0x222228; // pressed / raised
|
|
static const uint32_t ACCENT = 0xFFB000; // amber: focus, badges, own bubbles
|
|
static const uint32_t ACCENT_DIM= 0x6B4A00; // own bubble fill
|
|
static const uint32_t TEXT = 0xF2EEE6;
|
|
static const uint32_t TEXT_MUTED= 0x9A958C;
|
|
static const uint32_t OK = 0x6FCF6F; // delivered / relayed
|
|
static const uint32_t FAIL = 0xE5534B; // not delivered
|
|
|
|
// Spacing (px)
|
|
static const int PAD = 8;
|
|
static const int GAP = 6;
|
|
static const int RADIUS = 10;
|
|
static const int STATUS_H = 22; // top status bar
|
|
static const int ROW_H = 44; // list row (touch target)
|
|
|
|
// Type -- Noto Sans, generated by fonts/generate.sh (declared in lv_conf.h).
|
|
// ui_font_40 holds digits / ':' / '-' only (clock).
|
|
#define THEME_FONT_SMALL (&ui_font_12)
|
|
#define THEME_FONT_BODY (&ui_font_14)
|
|
#define THEME_FONT_TITLE (&ui_font_16)
|
|
#define THEME_FONT_LARGE (&ui_font_20)
|
|
#define THEME_FONT_CLOCK (&ui_font_40)
|
|
}
|