Kundenansicht neu: vorübergehende Messung der iPhone-Höhe
Der Fix 0fa8fdb hat die zu hoch stehende Leiste am iPhone nicht
behoben. Damit wir nicht weiter raten: die Seite schickt am iPhone
Bildschirmwerte (Fenster, visualViewport, Bildschirm, Safe-Area,
vh-Einheiten, Lage der Leiste, Eingriffe von hoehe.js) an
/api/diag/hoehe, der Server schreibt sie als Zeile "[diag-hoehe]" ins
Log. Keine Inhalte, nur Pilot-Kunden (nicht die Mitarbeiter-Ansicht),
höchstens 80 Meldungen je Seite und 400 Zeilen je Kunde und Stunde.
Wird nach der Klärung wieder entfernt.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
0fa8fdbbac
commit
cca29a4aef
7 files changed
+188
-4
No files matched your search
+5
-2
@@ -23,9 +23,10 @@ export function haengt(zustand, { hoehe, breite, textfeldAktiv }) {
|
||||
|
||||
/**
|
||||
* Verdrahtung: merkt sich die volle Höhe (resize), prüft nach dem Verlassen eines Feldes (focusout), nach einem resize ohne Textfeld
|
||||
* und wenn die App wieder nach vorne kommt (visibilitychange), jeweils zu den Zeiten PRUEF_MS. Rückgabe { pruefe, stand, beende }.
|
||||
* und wenn die App wieder nach vorne kommt (visibilitychange), jeweils zu den Zeiten PRUEF_MS. onHeile({ vorher, nachher, voll, versuche }) nach
|
||||
* jedem Eingriff. Rückgabe { pruefe, stand, beende }.
|
||||
*/
|
||||
export function beobachteHoehe({ win = window, doc = document, element, aktiv = () => true, istTextfeld = () => false }) {
|
||||
export function beobachteHoehe({ win = window, doc = document, element, aktiv = () => true, istTextfeld = () => false, onHeile = () => {} }) {
|
||||
const messe = () => ({ hoehe: win.innerHeight, breite: win.innerWidth })
|
||||
let z = hoeheZustand(null, messe())
|
||||
let versuche = 0
|
||||
@@ -57,8 +58,10 @@ export function beobachteHoehe({ win = window, doc = document, element, aktiv =
|
||||
if (!haengt(z, { ...m, textfeldAktiv: istTextfeld(doc.activeElement) })) { merke(); return false }
|
||||
if (versuche >= MAX_VERSUCHE) return false
|
||||
versuche += 1
|
||||
const vorher = win.innerHeight
|
||||
heile()
|
||||
merke()
|
||||
try { onHeile({ vorher, nachher: win.innerHeight, voll: z.voll, versuche }) } catch { /* nur Beobachter */ }
|
||||
return true
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user