Design-Refresh iOS: IrisDesign-Package, Themes, Light/Dark (Gegenstück iris/Iris) #64

Closed
opened 2026-10-31 10:50:43 +00:00 by alf · 10 comments
Owner

Gegenstück zu iris/Iris (Design-Refresh mit Themes und Light/Dark; Entscheidungen und Etappen dort). Hier: IrisRemote bindet das Package IrisDesign ein, ersetzt den DS-Shim in FlowPlatformShims.swift und die direkten System-Farben durch Tokens, bekommt Theme-/Modus-Auswahl in den Einstellungen und Glass mit #available-Fallback (iOS 17 bleibt Target).

Gegenstück zu iris/Iris (Design-Refresh mit Themes und Light/Dark; Entscheidungen und Etappen dort). Hier: IrisRemote bindet das Package `IrisDesign` ein, ersetzt den `DS`-Shim in `FlowPlatformShims.swift` und die direkten System-Farben durch Tokens, bekommt Theme-/Modus-Auswahl in den Einstellungen und Glass mit `#available`-Fallback (iOS 17 bleibt Target).
Author
Owner

PR #65 gemergt: feat(design): IrisDesign einbinden, Darstellung System/Hell/Dunkel, Iris-Akzent (#64)
http://docker:3000/iris/2ndbrain-ios/pulls/65

Commits:

  • feat(design): IrisDesign einbinden, Darstellung System/Hell/Dunkel, Iris-Akzent (#64)

Stand: IrisRemote bindet IrisDesign ein, Darstellung System/Hell/Dunkel, Iris-Akzent (Etappe 1, iOS)

Befund: iOS hatte kein Package und einen eigenen DS-Shim mit System-Farben (FlowPlatformShims.swift); Light/Dark folgte nur dem System, ohne Wahl und ohne Iris-Akzent.

Geändert:

  • Package iris/IrisDesign (branch main) als Abhängigkeit des Targets IrisRemote.
  • Der DS-Shim der Flow-Ansichten liefert jetzt IrisColors (Iris-Palette, dynamisch Hell/Dunkel).
  • Einstellungen: Abschnitt „Darstellung“ (System / Hell / Dunkel), am App-Wurzelelement über .preferredColorScheme; dazu .tint mit dem Iris-Akzent (Indigo).
  • Deutsche Übersetzungen für die neuen Texte.

Geprüft: xcodebuild für den iOS-Simulator (ohne Signierung, eigener Build-Ordner): BUILD SUCCEEDED, das Package wird aufgelöst (main @ 637b2ab), der UIKit-Zweig des Packages kompiliert. Im Simulator (iPhone 17 Pro) gestartet und in Hell und Dunkel angesehen: Der Indigo-Akzent greift in beiden Modi (Tab-Leiste, Koppeln-Button, Menü-Symbol), der Moduswechsel über das System wirkt.

Nicht geprüft: Die neue Auswahl in den Einstellungen wurde nicht bedient (der Simulator war nicht mit einem Server gekoppelt, der Mitteilungsdialog deckte die Ansicht). Nicht auf einem Gerät installiert. Die Flow-Ansichten wurden nicht angesehen.

Grenzen: Die meisten iOS-Ansichten nutzen weiter Systemfarben (z. B. 263× .secondary), Hintergründe und Listen bleiben daher System-Schwarz/-Grau, nicht die Palette-Flächen. Das ist Teil von Etappe 3 (Feinschliff). Ein Package.resolved liegt im iOS-Repo noch nicht; Xcode legt es beim ersten Öffnen an.

Offen: Palette-Flächen und Glass auf iOS (E3); Gegenstück zu iris/Iris#261.

PR #65 gemergt: feat(design): IrisDesign einbinden, Darstellung System/Hell/Dunkel, Iris-Akzent (#64) http://docker:3000/iris/2ndbrain-ios/pulls/65 Commits: - feat(design): IrisDesign einbinden, Darstellung System/Hell/Dunkel, Iris-Akzent (#64) --- **Stand: IrisRemote bindet IrisDesign ein, Darstellung System/Hell/Dunkel, Iris-Akzent (Etappe 1, iOS)** **Befund:** iOS hatte kein Package und einen eigenen `DS`-Shim mit System-Farben (`FlowPlatformShims.swift`); Light/Dark folgte nur dem System, ohne Wahl und ohne Iris-Akzent. **Geändert:** - Package `iris/IrisDesign` (branch `main`) als Abhängigkeit des Targets IrisRemote. - Der `DS`-Shim der Flow-Ansichten liefert jetzt `IrisColors` (Iris-Palette, dynamisch Hell/Dunkel). - Einstellungen: Abschnitt „Darstellung“ (System / Hell / Dunkel), am App-Wurzelelement über `.preferredColorScheme`; dazu `.tint` mit dem Iris-Akzent (Indigo). - Deutsche Übersetzungen für die neuen Texte. **Geprüft:** `xcodebuild` für den iOS-Simulator (ohne Signierung, eigener Build-Ordner): BUILD SUCCEEDED, das Package wird aufgelöst (main @ 637b2ab), der UIKit-Zweig des Packages kompiliert. Im Simulator (iPhone 17 Pro) gestartet und in Hell und Dunkel angesehen: Der Indigo-Akzent greift in beiden Modi (Tab-Leiste, Koppeln-Button, Menü-Symbol), der Moduswechsel über das System wirkt. **Nicht geprüft:** Die neue Auswahl in den Einstellungen wurde nicht bedient (der Simulator war nicht mit einem Server gekoppelt, der Mitteilungsdialog deckte die Ansicht). Nicht auf einem Gerät installiert. Die Flow-Ansichten wurden nicht angesehen. **Grenzen:** Die meisten iOS-Ansichten nutzen weiter Systemfarben (z. B. 263× `.secondary`), Hintergründe und Listen bleiben daher System-Schwarz/-Grau, nicht die Palette-Flächen. Das ist Teil von Etappe 3 (Feinschliff). Ein `Package.resolved` liegt im iOS-Repo noch nicht; Xcode legt es beim ersten Öffnen an. **Offen:** Palette-Flächen und Glass auf iOS (E3); Gegenstück zu iris/Iris#261.
Author
Owner

PR #66 gemergt: feat(themes): Theme-Auswahl in den Einstellungen (#64)
http://docker:3000/iris/2ndbrain-ios/pulls/66

Commits:

  • feat(themes): Theme-Auswahl in den Einstellungen (#64)

Stand: Theme-Auswahl in den iOS-Einstellungen (Etappe 2, iOS)

Geändert: Im Abschnitt „Darstellung“ der Einstellungen neben System/Hell/Dunkel eine Auswahl „Theme“ (Iris / Graphit / Papier), die Theme.activate() aufruft. Der lokale (nicht versionierte) Pin in Package.resolved steht auf IrisDesign 1688e76; Xcode holt sonst den alten Stand.

Geprüft: xcodebuild für den iOS-Simulator (ohne Signierung): BUILD SUCCEEDED, Checkout 1688e76.

Nicht geprüft: Die Auswahl wurde nicht bedient, weder im Simulator noch auf dem Gerät. Auf iOS greifen die Tokens nur im Akzent und in den Flow-Ansichten; die übrigen Ansichten nutzen Systemfarben, ein Themewechsel ändert dort daher vorerst nur den Akzent.

Offen: Palette-Flächen auf iOS (Etappe 3).

PR #66 gemergt: feat(themes): Theme-Auswahl in den Einstellungen (#64) http://docker:3000/iris/2ndbrain-ios/pulls/66 Commits: - feat(themes): Theme-Auswahl in den Einstellungen (#64) --- **Stand: Theme-Auswahl in den iOS-Einstellungen (Etappe 2, iOS)** **Geändert:** Im Abschnitt „Darstellung“ der Einstellungen neben System/Hell/Dunkel eine Auswahl „Theme“ (Iris / Graphit / Papier), die `Theme.activate()` aufruft. Der lokale (nicht versionierte) Pin in `Package.resolved` steht auf IrisDesign `1688e76`; Xcode holt sonst den alten Stand. **Geprüft:** `xcodebuild` für den iOS-Simulator (ohne Signierung): BUILD SUCCEEDED, Checkout `1688e76`. **Nicht geprüft:** Die Auswahl wurde nicht bedient, weder im Simulator noch auf dem Gerät. Auf iOS greifen die Tokens nur im Akzent und in den Flow-Ansichten; die übrigen Ansichten nutzen Systemfarben, ein Themewechsel ändert dort daher vorerst nur den Akzent. **Offen:** Palette-Flächen auf iOS (Etappe 3).
Author
Owner

PR #67 gemergt: feat(glass): schwebende Bedienelemente als Glas (#64)
http://docker:3000/iris/2ndbrain-ios/pulls/67

Commits:

  • feat(glass): schwebende Bedienelemente als Glas (#64)

Stand: Glas für schwebende Bedienelemente (Etappe 3, iOS)

Geändert: 11 schwebende Kreise und Kapseln (Zurück- und Steuerknöpfe über Medien im Vault-Browser, Medienleisten, App-Sitzung, Auswahlleiste in Notizen) nutzen irisGlass statt .ultraThinMaterial/.regularMaterial: ab iOS 26 Liquid Glass mit zartem Theme-Ton, darunter das bisherige Material. Vollbreite Leisten und Inhaltskarten bleiben unverändert (Inhalte flach). Lokaler Package-Pin auf 8d025dd; Localizable.xcstrings von Xcode neu einsortiert, neuer Schlüssel „Theme“.

Geprüft: xcodebuild für den iOS-Simulator (ohne Signierung): BUILD SUCCEEDED, Checkout 8d025dd.

Nicht geprüft: Aussehen und Lesbarkeit der Glas-Elemente über Fotos und Videos, auf einem iOS-26-Gerät und unter iOS 17 bis 25 (Fallback). Nicht gestartet.

Offen: Palette-Flächen auf iOS, Chat-Layout, Animationen, Leerzustände.

PR #67 gemergt: feat(glass): schwebende Bedienelemente als Glas (#64) http://docker:3000/iris/2ndbrain-ios/pulls/67 Commits: - feat(glass): schwebende Bedienelemente als Glas (#64) --- **Stand: Glas für schwebende Bedienelemente (Etappe 3, iOS)** **Geändert:** 11 schwebende Kreise und Kapseln (Zurück- und Steuerknöpfe über Medien im Vault-Browser, Medienleisten, App-Sitzung, Auswahlleiste in Notizen) nutzen `irisGlass` statt `.ultraThinMaterial`/`.regularMaterial`: ab iOS 26 Liquid Glass mit zartem Theme-Ton, darunter das bisherige Material. Vollbreite Leisten und Inhaltskarten bleiben unverändert (Inhalte flach). Lokaler Package-Pin auf `8d025dd`; `Localizable.xcstrings` von Xcode neu einsortiert, neuer Schlüssel „Theme“. **Geprüft:** `xcodebuild` für den iOS-Simulator (ohne Signierung): BUILD SUCCEEDED, Checkout `8d025dd`. **Nicht geprüft:** Aussehen und Lesbarkeit der Glas-Elemente über Fotos und Videos, auf einem iOS-26-Gerät und unter iOS 17 bis 25 (Fallback). Nicht gestartet. **Offen:** Palette-Flächen auf iOS, Chat-Layout, Animationen, Leerzustände.
Author
Owner

PR #68 gemergt: feat(themes): iOS-Flächen, Listen und Formulare auf die Theme-Palette (#64)
http://docker:3000/iris/2ndbrain-ios/pulls/68

Commits:

  • feat(themes): iOS-Flächen, Listen und Formulare auf die Theme-Palette (#64)

Stand: iOS-Flächen auf die Theme-Palette (Etappe 3, iOS)

Befund: Die iOS-Ansichten nutzten Systemfarben für Flächen (69 Stellen), daher blieben Hintergründe überall System-Schwarz oder -Grau, egal welches Theme gewählt war.

Geändert:

  • 69 Stellen in 22 Dateien: secondarySystemBackground → surface2, tertiarySystemBackground → surface3, systemBackground und systemGroupedBackground → background, secondarySystemGroupedBackground → surface1, separator → borderSubtle.
  • 15 Form-Blöcke und 7 Listen (listStyle) mit scrollContentBackground(.hidden) und Theme-Hintergrund.
  • Wurzel-Hintergrund für Home (Seitenleiste, Platzhalter), Chat (ChatView) und Chat-Detail (AgentChatView).

Geprüft: xcodebuild für den iOS-Simulator (ohne Signierung): BUILD SUCCEEDED. Im Simulator (iPhone 17 Pro) mit gesetztem Theme gestartet und Pixel des Hintergrunds gemessen (der Mitteilungs-Dialog dunkelt die Ansicht ab, daher gedämpfte Werte): Papier hell #C3C0B8 (warm), Graphit hell #C2C2C3 (neutral), Iris hell #C4C4C7 (kühl); dunkel Papier #12100C, Iris #0C0D11. Vorher überall neutrales Grau/Schwarz.

Nicht geprüft: Nur der ungekoppelte Home-Zustand wurde gesehen, und nur durch den Dialog hindurch. Nicht gesehen: Chat mit Nachrichten, Einstellungen, Listen mit Einträgen, Vault, Sheets. Die Zeilen gruppierter Listen und Formulare behalten die Systemfarbe (secondarySystemGroupedBackground in List/Form ohne listRowBackground); auf Papier und Graphit können sie leicht vom Hintergrund abweichen. Textfarben (.primary, .secondary) bleiben System. Nutzer-Blase violett (Hermes-Farbe) unverändert. Nicht auf einem Gerät.

Offen: listRowBackground für Zeilen, Chat-Layout (Blasen, Codeblöcke), Animationen, Leerzustände.

PR #68 gemergt: feat(themes): iOS-Flächen, Listen und Formulare auf die Theme-Palette (#64) http://docker:3000/iris/2ndbrain-ios/pulls/68 Commits: - feat(themes): iOS-Flächen, Listen und Formulare auf die Theme-Palette (#64) --- **Stand: iOS-Flächen auf die Theme-Palette (Etappe 3, iOS)** **Befund:** Die iOS-Ansichten nutzten Systemfarben für Flächen (69 Stellen), daher blieben Hintergründe überall System-Schwarz oder -Grau, egal welches Theme gewählt war. **Geändert:** - 69 Stellen in 22 Dateien: `secondarySystemBackground` → `surface2`, `tertiarySystemBackground` → `surface3`, `systemBackground` und `systemGroupedBackground` → `background`, `secondarySystemGroupedBackground` → `surface1`, `separator` → `borderSubtle`. - 15 `Form`-Blöcke und 7 Listen (`listStyle`) mit `scrollContentBackground(.hidden)` und Theme-Hintergrund. - Wurzel-Hintergrund für Home (Seitenleiste, Platzhalter), Chat (`ChatView`) und Chat-Detail (`AgentChatView`). **Geprüft:** `xcodebuild` für den iOS-Simulator (ohne Signierung): BUILD SUCCEEDED. Im Simulator (iPhone 17 Pro) mit gesetztem Theme gestartet und Pixel des Hintergrunds gemessen (der Mitteilungs-Dialog dunkelt die Ansicht ab, daher gedämpfte Werte): Papier hell `#C3C0B8` (warm), Graphit hell `#C2C2C3` (neutral), Iris hell `#C4C4C7` (kühl); dunkel Papier `#12100C`, Iris `#0C0D11`. Vorher überall neutrales Grau/Schwarz. **Nicht geprüft:** Nur der ungekoppelte Home-Zustand wurde gesehen, und nur durch den Dialog hindurch. Nicht gesehen: Chat mit Nachrichten, Einstellungen, Listen mit Einträgen, Vault, Sheets. Die Zeilen gruppierter Listen und Formulare behalten die Systemfarbe (`secondarySystemGroupedBackground` in `List`/`Form` ohne `listRowBackground`); auf Papier und Graphit können sie leicht vom Hintergrund abweichen. Textfarben (`.primary`, `.secondary`) bleiben System. Nutzer-Blase violett (Hermes-Farbe) unverändert. Nicht auf einem Gerät. **Offen:** `listRowBackground` für Zeilen, Chat-Layout (Blasen, Codeblöcke), Animationen, Leerzustände.
Author
Owner

PR #69 gemergt: feat(chat): Nutzerblase in Akzentfarbe, Antworten ohne Blase (#64)
http://docker:3000/iris/2ndbrain-ios/pulls/69

Commits:

  • feat(chat): Nutzerblase in Akzentfarbe, Antworten ohne Blase (#64)

Stand: Chat-Layout auf iOS (Etappe 3)

Geändert: AgentMessageBubble, Streaming-Antwort und ChatView: Die Nutzerblase hat die Form IrisBubble.userShape in der Akzentfarbe (vorher Violett), Text in textOnAccent. Antworten des Assistenten stehen ohne Blase und mit weniger Rand rechts (Mindestabstand 20 statt 60 pt), die Tipp-Punkte beim Streamen ohne Fläche. Die lila Chips (Systemprompt, weitergeleiteter Chat) bleiben. Lokaler Package-Pin auf 42c775e.

Geprüft: xcodebuild für den iOS-Simulator: BUILD SUCCEEDED, Checkout 42c775e.

Nicht geprüft: Aussehen, weil der Simulator nicht mit einem Server gekoppelt war und der Chat keine Nachrichten zeigt. Nicht gesehen: Tabellen, Codeblöcke, Bilder ohne Blase, Zwischenschritte, lange Antworten, die Themes in Hell und Dunkel. Nicht auf einem Gerät.

Offen: Alf sieht den Chat an; danach Codeblöcke und Tool-Aufrufe, Animationen, Leerzustände.

PR #69 gemergt: feat(chat): Nutzerblase in Akzentfarbe, Antworten ohne Blase (#64) http://docker:3000/iris/2ndbrain-ios/pulls/69 Commits: - feat(chat): Nutzerblase in Akzentfarbe, Antworten ohne Blase (#64) --- **Stand: Chat-Layout auf iOS (Etappe 3)** **Geändert:** `AgentMessageBubble`, Streaming-Antwort und `ChatView`: Die Nutzerblase hat die Form `IrisBubble.userShape` in der Akzentfarbe (vorher Violett), Text in `textOnAccent`. Antworten des Assistenten stehen ohne Blase und mit weniger Rand rechts (Mindestabstand 20 statt 60 pt), die Tipp-Punkte beim Streamen ohne Fläche. Die lila Chips (Systemprompt, weitergeleiteter Chat) bleiben. Lokaler Package-Pin auf `42c775e`. **Geprüft:** `xcodebuild` für den iOS-Simulator: BUILD SUCCEEDED, Checkout `42c775e`. **Nicht geprüft:** Aussehen, weil der Simulator nicht mit einem Server gekoppelt war und der Chat keine Nachrichten zeigt. Nicht gesehen: Tabellen, Codeblöcke, Bilder ohne Blase, Zwischenschritte, lange Antworten, die Themes in Hell und Dunkel. Nicht auf einem Gerät. **Offen:** Alf sieht den Chat an; danach Codeblöcke und Tool-Aufrufe, Animationen, Leerzustände.
Author
Owner

PR #72 gemergt: feat(chat): Codeblock als Karte mit Sprache und Kopieren-Knopf (#64)
http://docker:3000/iris/2ndbrain-ios/pulls/72

Commits:

  • feat(chat): Codeblock als Karte mit Sprache und Kopieren-Knopf (#64)

Stand: Codeblock als Karte mit Kopfzeile und Kopieren (Etappe 3, iOS)

Geändert: MarkdownTextView: Der Codeblock trägt jetzt die Sprache aus dem Fence mit (codeBlock(code:language:)) und ist eine Karte: Kopfzeile mit Sprache (oder „Code“) und Kopieren-Knopf („Kopiert“ mit Häkchen für 1,5 s), Code als wählbarer Text darunter. Fläche surface1, Kopfzeile surface2, Rand borderSubtle, Radius 10.

Geprüft: xcodebuild für den iOS-Simulator: BUILD SUCCEEDED.

Nicht geprüft: Aussehen und Knopf (kein Chat mit Code im Simulator). Nicht gesehen: lange Zeilen (der Code bricht wie bisher im UITextView um), die drei Themes. Nicht auf einem Gerät.

Offen: Tool-Aufrufe, Animationen, Leerzustände.

PR #72 gemergt: feat(chat): Codeblock als Karte mit Sprache und Kopieren-Knopf (#64) http://docker:3000/iris/2ndbrain-ios/pulls/72 Commits: - feat(chat): Codeblock als Karte mit Sprache und Kopieren-Knopf (#64) --- **Stand: Codeblock als Karte mit Kopfzeile und Kopieren (Etappe 3, iOS)** **Geändert:** `MarkdownTextView`: Der Codeblock trägt jetzt die Sprache aus dem Fence mit (`codeBlock(code:language:)`) und ist eine Karte: Kopfzeile mit Sprache (oder „Code“) und Kopieren-Knopf („Kopiert“ mit Häkchen für 1,5 s), Code als wählbarer Text darunter. Fläche `surface1`, Kopfzeile `surface2`, Rand `borderSubtle`, Radius 10. **Geprüft:** `xcodebuild` für den iOS-Simulator: BUILD SUCCEEDED. **Nicht geprüft:** Aussehen und Knopf (kein Chat mit Code im Simulator). Nicht gesehen: lange Zeilen (der Code bricht wie bisher im UITextView um), die drei Themes. Nicht auf einem Gerät. **Offen:** Tool-Aufrufe, Animationen, Leerzustände.
Author
Owner

PR #73 gemergt: feat(chat): Zwischenschritte und Thinking gedämpft ohne Fläche (#64)
http://docker:3000/iris/2ndbrain-ios/pulls/73

Commits:

  • feat(chat): Zwischenschritte und Thinking gedämpft ohne Fläche (#64)

Stand: Zwischenschritte und Thinking gedämpft (Etappe 3, iOS)

Geändert: AgentMessageBubble (Zwischenantworten) und ThinkingBubble: ohne Fläche, Pfeil in textTertiary, aufgeklappter Inhalt eingerückt mit feiner Linie links (irisQuietDetail). Lokaler Pin auf 9121fba.

Geprüft: xcodebuild für den iOS-Simulator: BUILD SUCCEEDED, Checkout 9121fba.

Nicht geprüft: Aussehen und die Erkennbarkeit als aufklappbar (kein Chat mit Zwischenschritten im Simulator). Nicht auf einem Gerät.

PR #73 gemergt: feat(chat): Zwischenschritte und Thinking gedämpft ohne Fläche (#64) http://docker:3000/iris/2ndbrain-ios/pulls/73 Commits: - feat(chat): Zwischenschritte und Thinking gedämpft ohne Fläche (#64) --- **Stand: Zwischenschritte und Thinking gedämpft (Etappe 3, iOS)** **Geändert:** `AgentMessageBubble` (Zwischenantworten) und `ThinkingBubble`: ohne Fläche, Pfeil in `textTertiary`, aufgeklappter Inhalt eingerückt mit feiner Linie links (`irisQuietDetail`). Lokaler Pin auf `9121fba`. **Geprüft:** `xcodebuild` für den iOS-Simulator: BUILD SUCCEEDED, Checkout `9121fba`. **Nicht geprüft:** Aussehen und die Erkennbarkeit als aufklappbar (kein Chat mit Zwischenschritten im Simulator). Nicht auf einem Gerät.
Author
Owner

PR #74 gemergt: fix(chat): Denkprozess und Zwischenschritte lassen sich wieder einklappen (#64)
http://docker:3000/iris/2ndbrain-ios/pulls/74

Commits:

  • fix(chat): Denkprozess und Zwischenschritte lassen sich wieder einklappen (#64)

Stand: Denkprozess und Zwischenschritte lassen sich wieder einklappen (iOS)

Befund: Alf meldete mit Screenshot (iPhone, Denkprozess aufgeklappt, Pfeil rechts): Der Block lässt sich nach dem gedämpften Umbau (PR #73) nicht mehr einklappen. Warum genau, ist nicht nachgewiesen: Der Umbau hatte Fläche, Innenabstand und Clip der DisclosureGroup-Zeile entfernt; ein Tippen ließ sich im Simulator nicht prüfen.

Geändert: ThinkingBubble und die Zwischenantworten nutzen IrisDisclosure aus dem Package (eigene Zeile: Button über die volle Breite mit contentShape, Pfeil dreht sich, Inhalt blendet in 0,2 s ein; Inhalt mit Linie links). Lokaler Pin auf IrisDesign d796020.

Geprüft: xcodebuild für den iOS-Simulator: BUILD SUCCEEDED, Checkout d796020.

Nicht geprüft: Dass das Einklappen jetzt funktioniert; weder getippt noch auf dem Gerät. Falls es weiter klemmt, liegt es nicht an der Zeile selbst (dann Messung statt Vermutung: z. B. ob der Tap ankommt, ob der State zurückgesetzt wird, weil die Ansicht beim Streamen neu entsteht).

PR #74 gemergt: fix(chat): Denkprozess und Zwischenschritte lassen sich wieder einklappen (#64) http://docker:3000/iris/2ndbrain-ios/pulls/74 Commits: - fix(chat): Denkprozess und Zwischenschritte lassen sich wieder einklappen (#64) --- **Stand: Denkprozess und Zwischenschritte lassen sich wieder einklappen (iOS)** **Befund:** Alf meldete mit Screenshot (iPhone, Denkprozess aufgeklappt, Pfeil rechts): Der Block lässt sich nach dem gedämpften Umbau (PR #73) nicht mehr einklappen. Warum genau, ist **nicht nachgewiesen**: Der Umbau hatte Fläche, Innenabstand und Clip der `DisclosureGroup`-Zeile entfernt; ein Tippen ließ sich im Simulator nicht prüfen. **Geändert:** `ThinkingBubble` und die Zwischenantworten nutzen `IrisDisclosure` aus dem Package (eigene Zeile: Button über die volle Breite mit `contentShape`, Pfeil dreht sich, Inhalt blendet in 0,2 s ein; Inhalt mit Linie links). Lokaler Pin auf IrisDesign `d796020`. **Geprüft:** `xcodebuild` für den iOS-Simulator: BUILD SUCCEEDED, Checkout `d796020`. **Nicht geprüft:** Dass das Einklappen jetzt funktioniert; weder getippt noch auf dem Gerät. Falls es weiter klemmt, liegt es nicht an der Zeile selbst (dann Messung statt Vermutung: z. B. ob der Tap ankommt, ob der State zurückgesetzt wird, weil die Ansicht beim Streamen neu entsteht).
Author
Owner

PR #75 gemergt: feat(ui): Leerzustand der Startseite mit Akzent und Handlung (#64)
http://docker:3000/iris/2ndbrain-ios/pulls/75

Commits:

  • feat(ui): Leerzustand der Startseite mit Akzent und Handlung (#64)

Stand: Leerzustand der Startseite mit Akzent und Handlung (Etappe 3, iOS)

Geändert: MainView.emptyState (verbunden, noch kein Chat): Das Symbol sitzt in einem Kreis mit zartem Akzent-Ton und nutzt die Akzentfarbe des Themes statt Violett; darunter ein Knopf „Neuer Agent Job“ (öffnet dasselbe Blatt wie das „+“). Nicht verbunden bleibt das Symbol grau. Der „Koppeln“-Knopf der Verbindungskarte nutzt Akzent und textOnAccent als Kapsel (vorher Systemakzent, Weiß, Rechteck). Texte unverändert, vorhandene Übersetzungen genutzt.

Geprüft: xcodebuild für den iOS-Simulator: BUILD SUCCEEDED.

Nicht geprüft: Aussehen (der Mitteilungs-Dialog des Simulators verdeckt die Startseite; der Zustand „verbunden, leer“ ist ohne Server nicht erreichbar). Nicht auf einem Gerät.

Offen: Leerzustände auf dem Mac (leerer Chat, leere Notiz/Vault, fehlende Plugins), Animationen.

PR #75 gemergt: feat(ui): Leerzustand der Startseite mit Akzent und Handlung (#64) http://docker:3000/iris/2ndbrain-ios/pulls/75 Commits: - feat(ui): Leerzustand der Startseite mit Akzent und Handlung (#64) --- **Stand: Leerzustand der Startseite mit Akzent und Handlung (Etappe 3, iOS)** **Geändert:** `MainView.emptyState` (verbunden, noch kein Chat): Das Symbol sitzt in einem Kreis mit zartem Akzent-Ton und nutzt die Akzentfarbe des Themes statt Violett; darunter ein Knopf „Neuer Agent Job“ (öffnet dasselbe Blatt wie das „+“). Nicht verbunden bleibt das Symbol grau. Der „Koppeln“-Knopf der Verbindungskarte nutzt Akzent und `textOnAccent` als Kapsel (vorher Systemakzent, Weiß, Rechteck). Texte unverändert, vorhandene Übersetzungen genutzt. **Geprüft:** `xcodebuild` für den iOS-Simulator: BUILD SUCCEEDED. **Nicht geprüft:** Aussehen (der Mitteilungs-Dialog des Simulators verdeckt die Startseite; der Zustand „verbunden, leer“ ist ohne Server nicht erreichbar). Nicht auf einem Gerät. **Offen:** Leerzustände auf dem Mac (leerer Chat, leere Notiz/Vault, fehlende Plugins), Animationen.
Author
Owner

PR #76 gemergt: feat(web): Theme-Variablen in Plugin- und Handbuch-WebViews (#64)
http://docker:3000/iris/2ndbrain-ios/pulls/76

Commits:

  • feat(web): Theme-Variablen in Plugin- und Handbuch-WebViews (#64)

Stand: Theme-Brücke in den iOS-WebViews (WebViews, Schritt 2)

Geändert: irisFollowTheme() (IrisDesign bb405a9) an PluginCanvasWebView (Canvas-Plugin-Blöcke und Plugin-Seitenpanel) und die Handbuch-WebView. Variablen --iris-* beim Start, live bei Modus-/Themewechsel. Ohne Seite, die sie nutzt, nichts Sichtbares. Lokaler Pin auf bb405a9.

Geprüft: xcodebuild für den iOS-Simulator: BUILD SUCCEEDED, Checkout bb405a9 (der UIKit-Zweig mit registerForTraitChanges kompiliert).

Nicht geprüft: Verhalten in einer echten WebView, auf einem Gerät.

Offen: Plugin-Seiten, Handbuch-CSS.

PR #76 gemergt: feat(web): Theme-Variablen in Plugin- und Handbuch-WebViews (#64) http://docker:3000/iris/2ndbrain-ios/pulls/76 Commits: - feat(web): Theme-Variablen in Plugin- und Handbuch-WebViews (#64) --- **Stand: Theme-Brücke in den iOS-WebViews (WebViews, Schritt 2)** **Geändert:** `irisFollowTheme()` (IrisDesign `bb405a9`) an `PluginCanvasWebView` (Canvas-Plugin-Blöcke und Plugin-Seitenpanel) und die Handbuch-WebView. Variablen `--iris-*` beim Start, live bei Modus-/Themewechsel. Ohne Seite, die sie nutzt, nichts Sichtbares. Lokaler Pin auf `bb405a9`. **Geprüft:** `xcodebuild` für den iOS-Simulator: BUILD SUCCEEDED, Checkout `bb405a9` (der UIKit-Zweig mit `registerForTraitChanges` kompiliert). **Nicht geprüft:** Verhalten in einer echten WebView, auf einem Gerät. **Offen:** Plugin-Seiten, Handbuch-CSS.
alf 2026-10-31 15:39:50 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
iris/2ndbrain-ios#64
No description provided.