Batterie-Messwertliste: Zeilen sehen nicht mehr klickbar aus (Cursor/Presshighlight)

.leaf (Panel) und .dm-listenzeile (companion-app) galten fuer echte
Navigations-Buttons UND fuer die reine <div>-Messwertliste gleichermassen -
Hand-Cursor und Tipp-Rueckmeldung suggerierten dort faelschlich Klickbarkeit,
obwohl die Liste nur Wischen-zum-Loeschen unterstuetzt. Beide Regeln jetzt
auf button.leaf/button.dm-listenzeile beschraenkt - echte Zeilen-Buttons
(Fahrten, Tankvorgaenge, Servicebuch) bleiben unveraendert klickbar.

Version 2026.8.27.22, live verifiziert (Cursor auto statt pointer bei der
Messwertliste, pointer weiterhin bei echten Zeilen-Buttons).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-28 00:47:57 +02:00
parent f4222b715f
commit bdd8cb89a3
4 changed files with 45 additions and 4 deletions
+30
View File
@@ -3909,6 +3909,36 @@ minimum, `12.149` at `09:44:00Z`), correctly skipping that same day's `15.439` m
three preceding fully-out-of-border days (`2026-08-23`/`24`/`25`, both min and max pinned at `13.988`, always
excluded).
## AA. Battery measurement list rows looked clickable but weren't (2026.8.27.22)
Owner report: "The line items at messwerte seem to be clickable. But they shall not be clickable" - the
Batterie-Messwerteliste (`vBatterieliste()`/`BatterieListe.tsx`) only supports swipe-to-delete, no per-row
navigation, but the rows visually signaled otherwise.
Root cause, identical shape in both codebases: the shared list-row CSS class (`.leaf` in the panel,
`.dm-listenzeile` in companion-app) is used for two genuinely different kinds of rows - real navigable
buttons (`<button class="leaf" data-go="...">` for trips/refuels/service-book entries) *and* this one plain,
non-navigating `<div class="leaf">`/`<div className="dm-listenzeile">` (battery measurements, swipe-delete
only). The CSS never distinguished the two: `cursor: pointer` (both stylesheets) and, in the panel,
`.leaf:active { background: var(--tile-2) }` (a tap/press highlight) applied to every `.leaf`/
`.dm-listenzeile` element regardless of whether it was a `<button>` or a plain `<div>` - so the battery list
rows got the hand cursor and the press-highlight "something happens on tap" affordance despite having no
click handler at all.
Fixed by scoping both rules to the element type that's actually clickable: `button.leaf`/
`button.dm-listenzeile` instead of the bare class selector, in `audi-dashboard.css` and
`companion-app/src/stile/screens.css`. No markup changes needed in either codebase - `vBatterieliste()` and
`BatterieListe.tsx` already rendered their rows as plain `<div>`s, only the shared CSS was too broad. Every
other `.leaf`/`dm-listenzeile` usage (trips, refuels, service book) is already a real `<button>`, so they
keep the cursor/press-highlight unchanged.
Verified: companion-app `tsc --noEmit` clean, full suite green at 146/146; panel `node --check` clean;
manifest bumped to `2026.8.27.22`, `audi_ha_test` restarted and confirmed clean via log. Confirmed live via
the panel's own shadow DOM (`getComputedStyle`, navigating through the real `data-go` click chain, not just
reading source): the battery list's `<div class="leaf">` now computes `cursor: auto` (was `pointer`), while
a genuinely navigable trip row (`<button class="leaf">`) still correctly computes `cursor: pointer` -
confirming the fix is properly scoped, not a blanket removal.
---
## Working conventions (observed — keep them)