iOS: "…"-Menü flackert und lässt sich nicht scrollen #70
Labels
No labels
herkunft/alpha-feedback
status
blockiert
status
zu-testen
typ
bug
typ
docs
typ
enhancement
typ
feature
typ
idea
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
iris/2ndbrain-ios#70
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
Auf dem iPhone flackert das "…"-Menü (Toolbar im Chat) beim Aufklappen manchmal und lässt sich nicht scrollen. Gemeldet mit Screenshot am 2026-10-31: Das Menü steht offen, die Einträge sind nach „Prompt-Templates“ abgeschnitten (darunter folgen Qwen TTS, Hilfe, Über Iris, Workspace, Einstellungen), im Hintergrund läuft der Chat.
Vermutete Ursache (aus dem Code gelesen, nicht reproduziert)
AgentChatViewbeobachtetjobManagerundserver; seinbodyläuft bei jedem gestreamten Token und bei jedem Health-Poll (~10 s). Die Toolbar und damit dasMenumitAppMenuItems(liestserver.isConnectedüber ein@EnvironmentObject) werden dabei neu aufgebaut, auch während das Systemmenü offen ist. Ein während des Öffnens neu aufgebautes Menü flackert und nimmt keine Scroll-Gesten an. Das erklärt „ab und zu“ (nur wenn gerade gestreamt oder gepollt wird).Plan
Das Menü als eigene, vergleichbare View (
AppMoreMenu,.equatable()), die nur bei echter Änderung von Verbindungsstatus, Plattform, Workspace oder Listenzustand neu gezeichnet wird. Gleiches für die Haupt-Toolbar.PR #71 gemergt: fix(menu): "…"-Menü als vergleichbare View, damit es beim Streamen nicht neu aufgebaut wird (#70)
http://docker:3000/iris/2ndbrain-ios/pulls/71
Commits:
Stand: Menü in eigener, vergleichbarer View (Fix-Versuch)
Befund: Siehe Issue: Das „…“-Menü flackert und scrollt nicht, wenn es aufgeklappt wird, während der Chat streamt oder der Health-Poll läuft. Die Ursache ist aus dem Code gelesen, nicht reproduziert:
AgentChatViewbeobachtetjobManagerundserverund rendert bei jedem gestreamten Token und alle ~10 s neu; dabei wird auch das offene Menü neu aufgebaut.Geändert: Neue View
AppMoreMenu(Equatable,.equatable()an beiden Aufrufstellen: Chat-Toolbar und Haupt-Toolbar). Ihrbodyläuft nur neu, wenn sich Verbindungsstatus, Plattform (Linux ja/nein), Vorhandensein des Workspace-Eintrags oder (Haupt-Toolbar) Listenzustand ändern.AppMenuItemsbekommt diese Werte als Parameter statt über@EnvironmentObject var server. Die Menüpunkte sind unverändert.Geprüft:
xcodebuildfür den iOS-Simulator: BUILD SUCCEEDED.Nicht geprüft: Dass das Flackern damit verschwindet. Es ließ sich weder reproduzieren noch im Simulator beobachten (kein gekoppelter Server, kein laufender Job). Nicht auf einem Gerät. Falls es weiter auftritt, spricht das gegen die Vermutung; dann braucht es eine Messung (Anzahl der
body-Auswertungen und Zeitpunkt beim Öffnen).Offen: Alf probiert es auf dem iPhone während ein Job streamt; das Issue bleibt bis dahin offen (
status/zu-testen).