Rollende Zeitraeume, zwei Gesten, CI-Symbole und das Screening faellt nach (2026.9.2.8-.12)

Gemeldet vom Eigentuemer an der realen Instanz, in einem Zug abgearbeitet.

STATISTIK. "Monat kleiner als Woche" war kein Rechenfehler, sondern die
Definition: am 02.09. begann die Kalenderwoche am 31.08., der Monat erst am
01.09. Umgestellt auf rollende Fenster (1/7/30/365 Tage), damit 1 ⊂ 7 ⊂ 30 ⊂
365 an jedem Tag gilt. "Jahr" meint damit nicht mehr das Kalenderjahr - so
entschieden. Zwei neue Tests halten die Verschachtelung fest.

Aus dem Langzeitverbrauch sind Herleitung und Erklaerabsatz aus der ANSICHT
genommen, nicht aus der Rechnung; das Datum des letzten Tankstops ebenfalls.

UEBERSICHT. Unter "Letzter Tankvorgang" steht das Datum statt der Tankstelle.

BILDER. Die Draufsicht war der einzige sichtbare Bildplatz ohne Zugang -
bilder.py kannte den Dateinamen, BILDER/BILDPLAETZE nicht. Jetzt ein Platz wie
jeder andere. Die Vorschau in den Einstellungen schneidet Fotos nicht mehr an,
und der Bildbereich der Fahrzeugseite steht eingerueckt statt randlos.

ZAHNRAD. Es lag mit seiner 44px-Trefferflaeche 21px im Kachelinhalt und fing
die obere Haelfte des ersten Knopfes ab (Versicherung, "Inland"). Die Kopfzeile
bekommt jetzt die Hoehe, die es braucht.

SCREENING. Lief ausschliesslich bei einer Aenderung des Kilometerstands, also
nur waehrend der Fahrt - im Stand blieben Ortsnamen und Verbrauch liegen. Jetzt
zusaetzlich einmal nach dem Start, und danach faellt es selbst nach, solange
ein Lauf sein Ortsbudget aufbraucht UND dabei etwas aufloest. Kein Dauertakt:
die Kette endet, sobald ein Lauf mit uebrigem Budget durchkommt.

GESTEN. Zum Loeschen nach links wischen, jetzt auch im Radarchiv (das Panel
hatte die Mechanik, das Archiv war nie angeschlossen; die App hatte sie gar
nicht). Vom linken Rand nach rechts wischen = zurueck, jetzt auch in der App,
mit denselben Zahlen wie im Panel und in beiden mit sichtbarer Rueckmeldung.

CI-SYMBOLE. Das Kachel-Zahnrad ist settings-s - im Panel stand der Pfad
sechsmal wortgleich im Markup, jetzt einmal als CI.settingsS. Das
handgezeichnete Zahnrad der Seitenleiste ist ersetzt und geloescht. Die
Zapfsaeule des Tanken-Reiters ist fuel-station-s, Faktor 0,84 um die
Rastermitte - live per getBBox() gemessen, damit sie auf dieselbe senkrechte
Spanne kommt wie Statistik.

Zurueckgenommen: die Titel der Unterseiten stehen wieder mittig. Zentriert ist
Apples HIG fuer Navigationsleisten; die linksbuendigen Titel sind die der
Hauptbereiche und folgen der anderen Regel.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-02 15:47:32 +02:00
parent e28abdce25
commit 38e7731a3d
23 changed files with 911 additions and 135 deletions
@@ -212,7 +212,11 @@
border: none; background: var(--tile); color: var(--fg2);
cursor: pointer; padding: 0; flex: 0 0 auto;
}
.profilbtn svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
/* Flaeche statt Kontur, seit das Zahnrad settings-s aus dem CI-Satz ist
(02.09.2026): der Pfad bringt sein eigenes fill="currentColor" mit, und ein
geerbter stroke wuerde zusaetzlich um jede Flaeche gezeichnet - dieselbe
Falle wie bei .voll/RahmenFlaeche in der App. */
.profilbtn svg { width: 19px; height: 19px; fill: currentColor; stroke: none; }
.profilbtn:hover { color: var(--fg); }
.profilbtn:active { background: var(--tile-2); color: var(--fg); transform: scale(.94); }
@@ -331,7 +335,7 @@ button.tile, .tilebtn { transition: background .15s, transform .1s; }
}
.zahnrad {
position: absolute;
top: 11px; right: 11px;
top: 8px; right: 8px;
width: 44px; height: 44px;
display: inline-flex; align-items: center; justify-content: center;
border: none; border-radius: 50%;
@@ -341,9 +345,14 @@ button.tile, .tilebtn { transition: background .15s, transform .1s; }
.zahnrad:hover { background: var(--tile-2); color: var(--fg); }
.zahnrad:active { background: var(--tile-2); color: var(--fg); transform: scale(.92); }
.zahnrad svg { width: 17px; height: 17px; }
/* Titelzeile nie unter dem Zahnrad/Chevron hindurchlaufen lassen */
/* Titelzeile nie unter dem Zahnrad/Chevron hindurchlaufen lassen - und die
Zeile hoch genug für die 44px-Trefferfläche des Zahnrads machen. Ohne die
Mindesthöhe ragte es in den Kachelinhalt und lag auf dem ersten Knopf
(Versicherung, "Inland · <Nummer>"; gemeldet 02.09.2026). Gleiche Regel in
der App (.dm-kachel--zahnrad). */
.tile:has(> .zahnrad) > .label:first-child,
.tile:has(> .go) > .label:first-child { padding-right: 44px; }
.tile:has(> .go) > .label:first-child { padding-right: 48px; }
.tile:has(> .zahnrad) > .label:first-child { min-height: 34px; }
/* C1: Abschnittstitel gemischt geschrieben, 14 px, ohne Sperrung - wie in der
aktuellen myAudi-App. Versalien trägt nur noch .eyebrow über dem Seitentitel. */
@@ -651,6 +660,17 @@ img.carfix.klein { aspect-ratio: auto; height: auto; }
hoeher zu ruecken - auf Ansage des Besitzers steht er wieder in voller
Groesse, weil ein Streifen nicht erkennen laesst, was dort hingehoert. */
.bildbox.bild-fehlt.carfix.klein { aspect-ratio: 16 / 8; height: auto; }
/* Die Draufsicht auf der Fahrzeugseite ist eine Beigabe, keine Szene: sie
steht ueber den Sicherheitszeilen und soll die Zeilen nicht nach unten
draengen. Statt randlos ueber die volle Breite (rund 374px auf einem
Telefon, mit 16:8 also 187px hoch) steht sie eingerueckt und mittig -
60% Breite, die Hoehe geht im selben Verhaeltnis mit auf rund 112px
zurueck. Auf Ansage des Eigentuemers am 02.09.2026 ("Draufsicht-Foto
Bereich ist zu gross"): schmaler, nicht flacher - flacher haette bei
einem Foto, das nicht sehr breit ist, oben und unten geschnitten. */
.szene.bleed.schmal { margin: 0; padding: 22px 0 26px; }
.szene.bleed.schmal .carbox { width: 60%; margin: 0 auto; padding: 0; }
.szene.bleed:has(.bild-fehlt)::before { display: none; }
.szene.bleed:has(.bild-fehlt) { margin-left: 0; margin-right: 0; }
.szene.bleed:has(.bild-fehlt) .carbox { padding: 0; }