Page: Übersicht #2

Closed
opened 2026-08-28 02:17:21 +02:00 by erdbruegger · 1 comment
Owner

Die "Übersicht" sollte "Fahrzeug" heißen, sowohl in der bottomNav als auch in der Überschrift.
Außerdem sollte hier dann auch ein Fahrzeug-Icon verwendet werden. Aktuell sieht es danach aus, als wären hier die material Icons benutzt worden. Können wir hierfür ein eigenes Icon-Set mit schönen, sauberen, modernen Icons verwendet?
Die Status-Informationen sind zu "penetrant". Ich denke es reicht wenn hier ein hübsches Akku-Symbol mit Füllstandsanzeige, SoC-Wert und Restweite dargestellt wird.
Den gewonnenen Platz können wir dann für Steuer-Short-Cuts verwenden. Licht, Ver-/Entriegeln, Klima.
Dann ein Button "Standort abrufen", der führt auf seine Sub-Seite mit Karte und aktueller Position

Die "Übersicht" sollte "Fahrzeug" heißen, sowohl in der bottomNav als auch in der Überschrift. Außerdem sollte hier dann auch ein Fahrzeug-Icon verwendet werden. Aktuell sieht es danach aus, als wären hier die material Icons benutzt worden. Können wir hierfür ein eigenes Icon-Set mit schönen, sauberen, modernen Icons verwendet? Die Status-Informationen sind zu "penetrant". Ich denke es reicht wenn hier ein hübsches Akku-Symbol mit Füllstandsanzeige, SoC-Wert und Restweite dargestellt wird. Den gewonnenen Platz können wir dann für Steuer-Short-Cuts verwenden. Licht, Ver-/Entriegeln, Klima. Dann ein Button "Standort abrufen", der führt auf seine Sub-Seite mit Karte und aktueller Position
Collaborator

Umgesetzt und live (http://192.168.1.85/, Release v1.0.23) — Strg+F5 wegen Cache.

Umbenannt: „Übersicht" heißt jetzt Fahrzeug, in der Bottom-Nav und in der Überschrift.

Eigenes Icon-Set: die Material-Icons sind komplett raus, app-weit. Wir liefern jetzt einen eigenen Font assets/fonts/AiwaysIcons.ttf aus — eine Teilmenge von Lucide mit genau den 57 Symbolen, die die App benutzt (~22 KB). Der Weg dahin war ein Umweg, den ich kurz festhalte, damit ihn niemand nochmal geht:

  • phosphor_flutter lässt sich mit Flutter 3.47 nicht bauen — es leitet von IconData ab, das inzwischen final class ist. flutter analyze sieht das nicht, erst der Web-Build knallt.
  • lucide_icons_flutter baut, schleppt aber 3,2 MB Fonts in sieben Schnitten mit, von denen die App genau einen braucht.

Deshalb der Subset-Font: reproduzierbar über tool/build_icon_font.py, Herkunft und Lizenz in assets/fonts/LICENSE. Nebeneffekt: das Web-Bundle (ohne CanvasKit) schrumpft von 8,1 auf 4,9 MB.

Status entschlackt: die sechs Kacheln sind weg. Stattdessen ein gezeichnetes Akku-Symbol mit echter Füllstandsanzeige, daneben SoC groß und die Restweite. Tap führt weiter in den SoC-Verlauf. Die Detailwerte (Spannung, Strom, Gang, km-Stand …) sind nicht verloren — sie leben jetzt unter Mehr › Diagnose (Issue #5).

Shortcuts auf dem gewonnenen Platz: Licht, Ver-/Entriegeln, Klima.

„Standort abrufen" führt auf eine Karten-Unterseite (flutter_map, dunkle CARTO-Kacheln, damit die Karte nicht als heller Fremdkörper im Design sitzt), mit Marker, Koordinaten, Zeitstempel und Zentrieren-Knopf.

Zwei Annahmen, die dir vielleicht nicht passen:

  1. Ver-/Entriegeln ist eine Kachel, kein Toggle. Die Telemetrie liefert den Sperrzustand nicht — ein Schalter würde also einen Zustand behaupten, den wir nicht kennen. Tap öffnet ein Sheet mit „Entriegeln" / „Verriegeln". Sobald der Zustand ankommt, mache ich einen echten Toggle draus.
  2. Die Karte zeigt gerade den Leerzustand. /vehicles/1/latest liefert aktuell kein lat/lon. Die Seite ist fertig und rendert, sobald Positionsdaten reinkommen — nur sehen wirst du derzeit den Hinweistext.
Umgesetzt und live (**http://192.168.1.85/**, Release `v1.0.23`) — Strg+F5 wegen Cache. **Umbenannt:** „Übersicht" heißt jetzt **Fahrzeug**, in der Bottom-Nav und in der Überschrift. **Eigenes Icon-Set:** die Material-Icons sind komplett raus, app-weit. Wir liefern jetzt einen eigenen Font `assets/fonts/AiwaysIcons.ttf` aus — eine Teilmenge von [Lucide](https://lucide.dev) mit genau den 57 Symbolen, die die App benutzt (~22 KB). Der Weg dahin war ein Umweg, den ich kurz festhalte, damit ihn niemand nochmal geht: - `phosphor_flutter` **lässt sich mit Flutter 3.47 nicht bauen** — es leitet von `IconData` ab, das inzwischen `final class` ist. `flutter analyze` sieht das nicht, erst der Web-Build knallt. - `lucide_icons_flutter` baut, schleppt aber **3,2 MB Fonts** in sieben Schnitten mit, von denen die App genau einen braucht. Deshalb der Subset-Font: reproduzierbar über `tool/build_icon_font.py`, Herkunft und Lizenz in `assets/fonts/LICENSE`. Nebeneffekt: das Web-Bundle (ohne CanvasKit) schrumpft von 8,1 auf **4,9 MB**. **Status entschlackt:** die sechs Kacheln sind weg. Stattdessen ein gezeichnetes Akku-Symbol mit echter Füllstandsanzeige, daneben SoC groß und die Restweite. Tap führt weiter in den SoC-Verlauf. Die Detailwerte (Spannung, Strom, Gang, km-Stand …) sind nicht verloren — sie leben jetzt unter **Mehr › Diagnose** (Issue #5). **Shortcuts** auf dem gewonnenen Platz: Licht, Ver-/Entriegeln, Klima. **„Standort abrufen"** führt auf eine Karten-Unterseite (`flutter_map`, dunkle CARTO-Kacheln, damit die Karte nicht als heller Fremdkörper im Design sitzt), mit Marker, Koordinaten, Zeitstempel und Zentrieren-Knopf. **Zwei Annahmen, die dir vielleicht nicht passen:** 1. **Ver-/Entriegeln ist eine Kachel, kein Toggle.** Die Telemetrie liefert den Sperrzustand nicht — ein Schalter würde also einen Zustand behaupten, den wir nicht kennen. Tap öffnet ein Sheet mit „Entriegeln" / „Verriegeln". Sobald der Zustand ankommt, mache ich einen echten Toggle draus. 2. **Die Karte zeigt gerade den Leerzustand.** `/vehicles/1/latest` liefert aktuell kein `lat`/`lon`. Die Seite ist fertig und rendert, sobald Positionsdaten reinkommen — nur sehen wirst du derzeit den Hinweistext.
Sign in to join this conversation.
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
aiways/AiwaysApp#2
No description provided.