Smooth graphs, sun path card, skeleton page switches and editor drag & drop

Firmware 0.2.15: trend graphs use a Catmull-Rom curve with a soft fill
drawn by the card's draw event; sun.sun gets a wide sun-path card with
horizon, arc and the sun at its current position; page switches show
the new page's card frames immediately and fill them from a one-shot
timer; the navigation is one full-width bar without a divider; the CYD
adopts the Guition light palette in styles and overlays.

App 0.2.13: pointer-based drag & drop (mouse and touch) to reorder tiles
in the mockup and to drop entities from the list, sticky save bar, a new
header with explained actions and a three-step guide, clearer firmware
dialog. New sun, weather and clock tiles start wide in their best view.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
Max Gramser
2026-09-13 09:09:37 +02:00
parent 517b102786
commit 4af92e1b4c
15 changed files with 807 additions and 321 deletions
+32 -20
View File
@@ -1,7 +1,7 @@
# Guition ESP32-S3-4848S040 / 4-inch EU wallbox, 480x480 IPS + GT911.
# Use guition-device.yaml; see docs/GUITION.md. CYD hardware is a separate profile.
substitutions:
SCREEN_FIRMWARE_VERSION: "0.2.14"
SCREEN_FIRMWARE_VERSION: "0.2.15"
DYNAMIC_TILES: "false"
DASHBOARD_INBOX_INTERNAL: "true"
DEVICE_NAME: "guition-wallbox"
@@ -3227,19 +3227,22 @@ lvgl:
was_on: false
# ---------- VALUE SLIDER OVERLAY ----------
# ---------- PAGE NAVIGATION: one full-width bar ----------
- obj:
id: page_prev
align: BOTTOM_LEFT
x: 14
y: -4
width: 150
x: 0
y: 0
width: 200
height: 44
pad_all: 0
radius: 12
bg_color: 0xEEEEEE
bg_opa: COVER
radius: 0
bg_opa: TRANSP
border_width: 0
scrollable: false
pressed:
bg_color: 0xE3E3E3
bg_opa: COVER
on_short_click:
- if:
condition:
@@ -3249,31 +3252,39 @@ lvgl:
- script.execute: show_tile_page
widgets:
- label:
align: CENTER
text: "< Vorige"
text_font: sublabel
align: LEFT_MID
x: 24
text: "< Vorige"
text_font: label
text_color: 0x1B1B1B
clickable: false
- label:
id: page_number
align: BOTTOM_MID
y: -18
y: 0
width: 80
height: 44
pad_top: 12
border_width: 0
text: "1 / 2"
text_align: CENTER
text_font: sublabel
text_color: 0x1B1B1B
- obj:
id: page_next
align: BOTTOM_RIGHT
x: -14
y: -4
width: 150
x: 0
y: 0
width: 200
height: 44
pad_all: 0
radius: 12
bg_color: 0xEEEEEE
bg_opa: COVER
radius: 0
bg_opa: TRANSP
border_width: 0
scrollable: false
pressed:
bg_color: 0xE3E3E3
bg_opa: COVER
on_short_click:
- if:
condition:
@@ -3283,9 +3294,10 @@ lvgl:
- script.execute: show_tile_page
widgets:
- label:
align: CENTER
text: "Volgende >"
text_font: sublabel
align: RIGHT_MID
x: -24
text: "Volgende >"
text_font: label
text_color: 0x1B1B1B
clickable: false