Termine ohne Gedaechtnis, Listen nach HIG, zwei zu schmale Felder (2026.9.2.13-.20)
TERMIN. Der Werkstatttermin wanderte bisher ins Fahrzeugprofil, stand als
Merkmal an der Karte und liess sich "verwerfen" - eine zweite Verwaltung neben
dem Kalender. Auf Ansage entfernt: er dient jetzt allein dem Kalendereintrag
"was, wann, bei welcher Werkstatt". Dabei aufgefallen: die App schrieb gar kein
LOCATION in die .ics, obwohl das Panel es seit jeher setzt.
Ohne Speicherung startete das Feld leer ("tt.mm.jjjj", so gemeldet). Es
schlaegt jetzt die Faelligkeit der gewaehlten Art vor, sonst heute - dafuer
liefert service.ts serviceKandidaten(). "Andere" ergaenzt die Auswahl.
BREITEN. Am laufenden Panel gemessen: die vier festen 132px-Datumsfelder
brauchen ab 140px, damit die letzte Ziffer nicht unter dem Kalendersymbol
liegt (jetzt 150px); die Art-Auswahl braucht 178px fuer
"Hauptuntersuchung" (jetzt 190px). In der App war nichts davon kaputt - eine
dort vorsorglich eingebaute Breite ist wieder entfernt.
LISTEN. Fahrten- und Tankliste verloren 58px an tote Breite: 22px Einrueckung
der Monatsebene plus 40px linkes Polster der Zeile. Auf dem Telefon brach
"Eichstaett -> Adelschlag" deshalb um. Apples Richtlinien gruppieren ueber
Abschnittskoepfe statt Einrueckung; die Zeilen stehen jetzt alle auf derselben
Kante (34 statt 96px), der Monat traegt Versalien und Sperrung und liest sich
als Kopf. Beschraenkt auf .liste/.dm-liste - anderswo ist das Polster gewollt.
BILDER. Die Draufsicht ist aus der Galerie genommen (nurStatus), gehoert aber
weiter in die Auswahl der Einstellungen: nur dort laesst sie sich hochladen.
Die Galerie schneidet Fotos nicht mehr an - die Frontansicht verlor unten die
Stossstange.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -8187,3 +8187,100 @@ Statistik**: y 2,76 bis 21,24. Ränder nachgemessen, nicht nur die Größe — d
|
||||
Übersicht-Symbol vom selben Tag.
|
||||
|
||||
`fuel-station-l` (48er-Raster) wird nicht gebraucht: die Reiter zeichnen mit 21 bzw. 26px.
|
||||
|
||||
---
|
||||
|
||||
## BQ. Termine, Listen und was sich im laufenden Panel messen lässt (2026.9.2.13-.20)
|
||||
|
||||
Ein Stapel Meldungen des Eigentümers am Nachmittag des 02.09.2026. Der rote Faden: diesmal ließ
|
||||
sich das meiste **am laufenden Panel messen** statt zu rechnen — der Browser dieser Sitzung hatte
|
||||
die Testinstanz angemeldet offen, und über die Shadow-Roots von Home Assistant kommt man an jedes
|
||||
Element (`getBBox()`, `getComputedStyle()`, Bildschirmfotos). Das ist der Weg, der in diesem Projekt
|
||||
schon zweimal Größenfehler verhindert hätte; er steht hier, damit er nicht wieder vergessen wird.
|
||||
|
||||
### Der Werkstatttermin hatte ein Gedächtnis, das niemand wollte (.14)
|
||||
|
||||
Jedes eingetragene Datum wanderte ins Fahrzeugprofil (`service.vereinbart`), erschien als Merkmal
|
||||
an der Terminkarte und ließ sich über einen eigenen Knopf „verwerfen" — eine **zweite
|
||||
Terminverwaltung neben dem Kalender**, die auseinanderlief, sobald der Termin dort verschoben wurde.
|
||||
Auf Ansage entfernt: kein Schreiben mehr (weder im Feld noch beim Export), kein Merkmal, kein
|
||||
Verwerfen-Knopf. Der Termin hat jetzt genau einen Zweck — dem Kalender zu sagen, **was** wann und
|
||||
bei **welcher Werkstatt**.
|
||||
|
||||
Dabei ist ein echter Mangel aufgefallen: die App schrieb **gar kein `LOCATION`** in die .ics. Der
|
||||
Termin sagte „was" und „wann", aber nicht „wo", obwohl das Panel es seit jeher setzt. Jetzt tragen
|
||||
beide Autohausname als Ort und Anschrift als Beschreibung.
|
||||
|
||||
### Und der Vorschlag, den ich dabei kaputt gemacht habe (.18)
|
||||
|
||||
Ohne Speicherung startete das Datumsfeld **leer** — auf dem Telefon als „tt.mm.jjjj" sichtbar, und
|
||||
genau so gemeldet („Datums-Textfeld kaputt bei Hauptuntersuchung"; bei Ölwechsel und Inspektion
|
||||
stand noch ein gespeicherter Termin drin). Der Fehler war meiner, aus demselben Nachmittag.
|
||||
|
||||
Jetzt schlägt das Feld die **Fälligkeit der gewählten Art** vor — dieselbe Zahl wie auf den Karten
|
||||
darüber, derselbe Vorschlag wie im Panel; fehlt sie (Hauptuntersuchung ohne HU-Datum, „Andere"),
|
||||
steht heute im Feld. Leer wird es nie. Dafür liefert `service.ts` jetzt `serviceKandidaten()`, alle
|
||||
drei Arten mit ihrer Fälligkeit; `naechsterService()` nimmt davon weiterhin die früheste.
|
||||
|
||||
### Zwei Felder, die zu schmal waren — gemessen, nicht geschätzt (.17)
|
||||
|
||||
Im Panel standen vier Datumsfelder und die Art-Auswahl auf fest verdrahteten **132px**. Am
|
||||
laufenden Panel nachgemessen (Audi Type 16px):
|
||||
|
||||
| | braucht | stand auf | jetzt |
|
||||
|---|---|---|---|
|
||||
| „24.07.2027" + Kalendersymbol | ab 140px frei | 132px | **150px** |
|
||||
| „Hauptuntersuchung" + Chevron | 150,4 + 28 = 178px | 132px | **190px** |
|
||||
|
||||
Beim Datum lag die letzte Ziffer über dem Symbol (Probereihe 132/140/150/160/170/180 nebeneinander
|
||||
eingesetzt und angesehen), bei der Auswahl stand „Hauptuntersuchur". Beide Zeilen passen auch auf
|
||||
375px Telefonbreite.
|
||||
|
||||
**In der App war nichts davon kaputt** — dort sitzt kein festes Maß, und der Eigentümer hat am Gerät
|
||||
gegengeprüft. Eine vorsorglich eingebaute Breite dort ist wieder entfernt worden: eine Änderung ohne
|
||||
Befund ist keine Verbesserung.
|
||||
|
||||
### Die Fahrtenliste: 58px tote Breite (.19/.20)
|
||||
|
||||
Gemeldet mit Bildschirmfoto vom iPhone: „Eichstätt → Adelschlag" brach um. Gemessen, warum:
|
||||
|
||||
| | |
|
||||
|---|---|
|
||||
| 22px | Einrückung der Monatsebene (`.lvl2`) |
|
||||
| 40px | linkes Polster jeder Zeile (`.leaf`/`.dm-blatt`) |
|
||||
|
||||
Zusammen 58px von rund 300px Kachelbreite, für einen Ortsnamen blieben ~150px.
|
||||
|
||||
**Apples Richtlinien gruppieren nicht über Einrückung, sondern über Abschnittsköpfe über die volle
|
||||
Breite**; die Zeilen stehen alle auf derselben Kante. Genau so jetzt — beschränkt auf `.liste` /
|
||||
`.dm-liste`, weil das linke Polster anderswo (Batteriewerte, Servicebuch, Zuletzt-Kachel) gewollt
|
||||
ist. Nachgemessen auf 375px: Fahrtzeile von 96px auf **34px** eingerückt, der Ortsname steht
|
||||
einzeilig.
|
||||
|
||||
Der Monat war danach 13px grau und die Zeile 16px schwarz — dazu die Frage des Eigentümers, ob das
|
||||
so gehöre. Es gehört so (iOS macht Abschnittsköpfe kleiner als den Inhalt), aber die Liste wirkte
|
||||
zweistufig. Der Monat trägt jetzt **11px, Versalien, 0,18em Sperrung** wie die übrigen Eyebrows —
|
||||
drei erkennbare Stufen, ohne dass der Kopf Platz kostet. 11 statt 10px: die Untergrenze dieses
|
||||
Projekts aus den Apple-Richtlinien.
|
||||
|
||||
### Kleinigkeiten aus demselben Stapel
|
||||
|
||||
- **„Andere"** in der Auswahl „Wofür" (.13). Im Panel etwas mehr als ein Listeneintrag: die Auswahl
|
||||
entsteht dort aus `termine()`, also aus **fälligen** Terminen mit Ziel und Kilometerstand.
|
||||
„Andere" ist keiner davon — dafür `terminAuswahl()`/`gewaehlterTermin()`, die beide Stellen
|
||||
bedienen, die vorher dieselbe Zeile doppelt hatten.
|
||||
- **Draufsicht nicht mehr in der Galerie** (.13): neues Kennzeichen `nurStatus` am Bildplatz. In der
|
||||
Auswahl der Einstellungen bleibt sie — sie ist der einzige Weg, das Foto hochzuladen.
|
||||
- **Die Galerie schneidet nicht mehr an** (.15): sie stand als letzte im festen 16:9-Kasten mit
|
||||
`object-fit: cover`, die Frontansicht verlor unten die Stoßstange. Jetzt bestimmt das Bild die
|
||||
Höhe, wie Übersicht-Szene und Einstellungs-Vorschau.
|
||||
- **Zusatz „vereinbart"** am Wechseltermin entfernt (.16) — sein Schalter war am selben Tag von der
|
||||
Räder-Seite verschwunden, das Feld blieb ungelesen im Profil zurück.
|
||||
|
||||
### Offen aus diesem Stapel
|
||||
|
||||
- **Teilen legt keinen Tankvorgang an** (gemeldet am Gerät). Noch nicht untersucht.
|
||||
- **Kopieren/Einfügen klappt am iPhone nicht.**
|
||||
- **Hochladen über einen eigenen HTTP-Endpunkt** statt über den Dienst: hebt die 3-MB-Grenze des
|
||||
Panels auf (WebSocket, aiohttp-Vorgabe 4 MiB) und spart die Base64-Aufblähung. Gemessen: über
|
||||
REST gehen 12 MB durch, über den WebSocket bricht die Verbindung ab 3,2 MB Rohbild wortlos ab.
|
||||
|
||||
Reference in New Issue
Block a user