Schriftgrößen: Slider soll die ganze App steuern, inklusive Web-Views #217

Closed
opened 2026-10-28 11:56:28 +00:00 by alf · 10 comments
Owner

Anforderung (Alf, 2026-10-28)

Der Slider „Font Size“ (Sonstige Einstellungen) soll die ganze App steuern, einschließlich aller Web-Views. Heute schwanken die Schriftgrößen über die komplette App, die Oberfläche ist schlecht lesbar. Das Thema ist als Nächstes dran, direkt nach dem Test der Vault-Synchronisation (iris/Iris#76).

Auslöser: Beim Abtippen eines 32-stelligen Passworts aus den Git-Server-Einstellungen wurden Z/2 und h/H verwechselt (kleine monospace Schrift, siehe Anhänge).

Befund (gemessen am 2026-10-28, Stand main)

Der Slider (CompanionPanelView.swift, Bereich −2…+12, Schritt 1, Schlüssel uiFontSizeOffset) ist ein Zuschlag in Punkten. Der Hilfetext sagt selbst: „Gilt für Chat-Blasen und Job-Liste.“ Jede Ansicht muss den Wert selbst lesen und zu ihren eigenen Größen addieren (opt-in).

Messung (Mac-App frontend/macos-iris/Iris) Wert
Dateien, die uiFontSizeOffset lesen 10
Dateien mit festen Größen .font(.system(size: N)) 102 (davon 94 ohne Slider)
Vorkommen fester Größen rund 1800
Verschiedene feste Größen 28 (7, 8, 9, 10, 10,5, 11, 12, 12,5, 13, 14, 15, 16, 18, 20–25, 28, 30, 32, 34, 36, 37, 40, 41, 44, 48, 74)
Häufigste 11 pt (587×), 12 pt (444×), 10 pt (254×), 13 pt (228×), 14 pt (96×), 15 pt (65×)
Semantische Stile (.caption, .callout …) etwa 200 Vorkommen, skalieren mit macOS, nicht mit dem Slider
WKWebView-Dateien 12 (Hilfe, Canvas-Blöcke, Plugin-Panels, HTML-Vorschau, KaTeX, Hermes-Web-GUI, PDF-Export …), keine setzt Seitenzoom oder Schriftgröße aus dem Slider
IrisRemote (iOS) 20 verschiedene feste Größen (8 bis 72), keine Datei liest uiFontSizeOffset

Ohne Slider-Wirkung sind u. a. alle Onboarding-Schritte, die Ansichten der Vault-Synchronisation und die Git-Server-Einstellungen. Es gibt eine DesignSystem.swift, aber keine gemeinsamen Schriftstufen.

Nachmessen:

cd frontend/macos-iris/Iris
grep -rhoE "\.font\(\.system\(size: *[0-9.]+" *.swift | sed -E 's/.*size: *//' | sort -n | uniq -c
comm -13 <(grep -lr uiFontSizeOffset *.swift | sort) <(grep -lrE '\.font\(\.system\(size:' *.swift | sort) | wc -l

Weitere Auffälligkeiten (Settings-Panel, Screenshot 12:54)

  • Beschriftungen brechen mitten im Wort um („Notificatio/ns“, „TTS-/Stimme“, „STT-/Sprache“, „UI-/Sprache“): Beschriftungsspalte zu schmal.
  • Gemischte Sprachen: „Font Size“, „Notifications“, „Hide Steps“, „Banner when an Agent Job finishes.“ neben deutschen Texten.
  • Uneinheitliche Zeilen: „Iris LLM“ bis „Embedding“ flach, „Remote-Server“, „Verbundene Geräte“, „Mac Remote Server“, „Chat Log“ als Karten mit anderem Abstand und anderer Schrift; Icons in der unteren Liste in unterschiedlicher Größe und Stärke.
  • Fingerabdruck, Adresse und Passwort in den Git-Server-Einstellungen: sehr kleine monospace Schrift, Zeichen schwer unterscheidbar.

Vorschlag (Ausgangslage; maßgeblich ist der Abschnitt „Entschieden“)

  1. Schriftstufen im DesignSystem: etwa 6 (Titel, Überschrift, Text, Beschriftung, klein, Code), jede mit Basisgröße.
  2. Slider als Faktor statt Zuschlag, z. B. 85 % bis 150 %. Ein fester Zuschlag von +12 macht aus 10 pt Texten und 28 pt Titeln ein schiefes Verhältnis.
  3. Alle festen Größen auf die Stufen umstellen (94 Dateien Mac, IrisRemote), mechanischer Umbau, in Schritten je Bereich.
  4. Web-Views: pageZoom für alle 12 Web-Views; eigene HTML-Seiten (Hilfe, Marktplatz, Canvas) zusätzlich über eine CSS-Variable, damit die Schrift mitwächst, ohne das Layout zu zoomen.
  5. Codeanzeigen (Passwort, Token, Fingerabdruck) in einer Schrift mit eindeutigen Zeichen (0/O, I/l/1, Z/2), in der Größe des Slider-Faktors, mit „Kopieren“-Knopf.
  6. Kleinere Punkte als eigene Schritte: Umbrüche in der Beschriftungsspalte, Sprachmischung, einheitliche Zeilen/Icons im Settings-Panel.

Entschieden (grill-me 2026-10-31)

Siehe Stand-Kommentar. Kurz: nur Mac (Iris + IrisClient), iOS unverändert; Faktor 85–150 % in 5-%-Schritten, alte Werte zurückgesetzt; nur der Slider, kein Dynamic Type; Web-Views per pageZoom (PDF-Export ausgenommen); Stufen 20/15/13/12/11 pt plus Code 13 pt; Icons wachsen mit, Textspalten werden flexibel.

Nicht Teil dieses Issues

Das peppigere Design (Farben, Karten, Symbole) kommt später und wird getrennt geplant.

## Anforderung (Alf, 2026-10-28) Der Slider „Font Size“ (Sonstige Einstellungen) soll die **ganze App** steuern, **einschließlich aller Web-Views**. Heute schwanken die Schriftgrößen über die komplette App, die Oberfläche ist schlecht lesbar. Das Thema ist als Nächstes dran, direkt nach dem Test der Vault-Synchronisation (iris/Iris#76). Auslöser: Beim Abtippen eines 32-stelligen Passworts aus den Git-Server-Einstellungen wurden `Z`/`2` und `h`/`H` verwechselt (kleine monospace Schrift, siehe Anhänge). ## Befund (gemessen am 2026-10-28, Stand `main`) **Der Slider** (`CompanionPanelView.swift`, Bereich −2…+12, Schritt 1, Schlüssel `uiFontSizeOffset`) ist ein **Zuschlag in Punkten**. Der Hilfetext sagt selbst: „Gilt für Chat-Blasen und Job-Liste.“ Jede Ansicht muss den Wert selbst lesen und zu ihren eigenen Größen addieren (opt-in). | Messung (Mac-App `frontend/macos-iris/Iris`) | Wert | |---|---| | Dateien, die `uiFontSizeOffset` lesen | **10** | | Dateien mit festen Größen `.font(.system(size: N))` | **102** (davon **94 ohne** Slider) | | Vorkommen fester Größen | rund 1800 | | Verschiedene feste Größen | **28** (7, 8, 9, 10, 10,5, 11, 12, 12,5, 13, 14, 15, 16, 18, 20–25, 28, 30, 32, 34, 36, 37, 40, 41, 44, 48, 74) | | Häufigste | 11 pt (587×), 12 pt (444×), 10 pt (254×), 13 pt (228×), 14 pt (96×), 15 pt (65×) | | Semantische Stile (`.caption`, `.callout` …) | etwa 200 Vorkommen, skalieren mit macOS, nicht mit dem Slider | | `WKWebView`-Dateien | **12** (Hilfe, Canvas-Blöcke, Plugin-Panels, HTML-Vorschau, KaTeX, Hermes-Web-GUI, PDF-Export …), **keine** setzt Seitenzoom oder Schriftgröße aus dem Slider | | IrisRemote (iOS) | 20 verschiedene feste Größen (8 bis 72), **keine** Datei liest `uiFontSizeOffset` | Ohne Slider-Wirkung sind u. a. alle Onboarding-Schritte, die Ansichten der Vault-Synchronisation und die Git-Server-Einstellungen. Es gibt eine `DesignSystem.swift`, aber keine gemeinsamen Schriftstufen. Nachmessen: ```bash cd frontend/macos-iris/Iris grep -rhoE "\.font\(\.system\(size: *[0-9.]+" *.swift | sed -E 's/.*size: *//' | sort -n | uniq -c comm -13 <(grep -lr uiFontSizeOffset *.swift | sort) <(grep -lrE '\.font\(\.system\(size:' *.swift | sort) | wc -l ``` ## Weitere Auffälligkeiten (Settings-Panel, Screenshot 12:54) - Beschriftungen brechen mitten im Wort um („Notificatio/ns“, „TTS-/Stimme“, „STT-/Sprache“, „UI-/Sprache“): Beschriftungsspalte zu schmal. - Gemischte Sprachen: „Font Size“, „Notifications“, „Hide Steps“, „Banner when an Agent Job finishes.“ neben deutschen Texten. - Uneinheitliche Zeilen: „Iris LLM“ bis „Embedding“ flach, „Remote-Server“, „Verbundene Geräte“, „Mac Remote Server“, „Chat Log“ als Karten mit anderem Abstand und anderer Schrift; Icons in der unteren Liste in unterschiedlicher Größe und Stärke. - Fingerabdruck, Adresse und Passwort in den Git-Server-Einstellungen: sehr kleine monospace Schrift, Zeichen schwer unterscheidbar. ## Vorschlag (Ausgangslage; maßgeblich ist der Abschnitt „Entschieden“) 1. **Schriftstufen im `DesignSystem`**: etwa 6 (Titel, Überschrift, Text, Beschriftung, klein, Code), jede mit Basisgröße. 2. **Slider als Faktor statt Zuschlag**, z. B. 85 % bis 150 %. Ein fester Zuschlag von +12 macht aus 10 pt Texten und 28 pt Titeln ein schiefes Verhältnis. 3. **Alle festen Größen auf die Stufen umstellen** (94 Dateien Mac, IrisRemote), mechanischer Umbau, in Schritten je Bereich. 4. **Web-Views:** `pageZoom` für alle 12 Web-Views; eigene HTML-Seiten (Hilfe, Marktplatz, Canvas) zusätzlich über eine CSS-Variable, damit die Schrift mitwächst, ohne das Layout zu zoomen. 5. **Codeanzeigen** (Passwort, Token, Fingerabdruck) in einer Schrift mit eindeutigen Zeichen (`0`/`O`, `I`/`l`/`1`, `Z`/`2`), in der Größe des Slider-Faktors, mit „Kopieren“-Knopf. 6. Kleinere Punkte als eigene Schritte: Umbrüche in der Beschriftungsspalte, Sprachmischung, einheitliche Zeilen/Icons im Settings-Panel. ## Entschieden (grill-me 2026-10-31) Siehe Stand-Kommentar. Kurz: nur Mac (Iris + IrisClient), iOS unverändert; Faktor 85–150 % in 5-%-Schritten, alte Werte zurückgesetzt; nur der Slider, kein Dynamic Type; Web-Views per `pageZoom` (PDF-Export ausgenommen); Stufen 20/15/13/12/11 pt plus Code 13 pt; Icons wachsen mit, Textspalten werden flexibel. ## Nicht Teil dieses Issues Das peppigere Design (Farben, Karten, Symbole) kommt später und wird getrennt geplant.
Author
Owner

Screenshot Settings-Panel (Slider „Font Size“ +6: wirkt nur auf Chat und Job-Liste; Umbrüche, Sprachmischung, uneinheitliche Zeilen). Die Screenshots der Git-Server-Einstellungen hängen bewusst nicht an, sie zeigen ein Passwort im Klartext.

Bildschirmfoto 2026-10-28 um 12.54.29.png

Screenshot Settings-Panel (Slider „Font Size“ +6: wirkt nur auf Chat und Job-Liste; Umbrüche, Sprachmischung, uneinheitliche Zeilen). Die Screenshots der Git-Server-Einstellungen hängen bewusst nicht an, sie zeigen ein Passwort im Klartext. ![Bildschirmfoto 2026-10-28 um 12.54.29.png](https://forgejo.lewerken.duckdns.org/attachments/660fbe39-b344-4d56-bb51-1a6803a4b8e8)
Author
Owner

Stand nach grill-me (2026-10-31): Entscheidungen

Geltungsbereich: nur frontend/macos-iris (Iris.app und IrisClient.app). IrisRemote (iOS) bleibt unverändert, ist gut lesbar.

Entscheidungen

  1. Faktor statt Punkte: Slider 85 % bis 150 %, Schritt 5 %, Standard 100 %. Alte Werte (−2…+12) werden einmalig zurückgesetzt.
  2. Nur der Slider steuert die Größe (keine Systemeinstellung). Die rund 200 semantischen Stile (.caption usw.) werden auf die Schriftstufen umgestellt.
  3. Web-Views: pageZoom auf den Slider-Faktor für alle 12 Web-Views, ausgenommen PDF-Export. Eigene HTML-Seiten bekommen eine CSS-Variable erst später und nur dort, wo pageZoom das Layout stört.
  4. Schriftstufen bei 100 %: Titel 20 pt, Überschrift 15 pt, Text 13 pt (= Standard), Beschriftung 12 pt, Klein 11 pt (nichts darunter), Code 13 pt monospace.
  5. Icons wachsen mit (eigene Stufe, gleicher Faktor). Feste Breiten, die Text enthalten, werden flexibel (behebt die Umbrüche in der Beschriftungsspalte). Reine Layoutmaße ohne Text (z. B. Sidebar-Breite) bleiben.

Reihenfolge (je ein PR, Issue bleibt offen, nach jedem Schritt status/zu-testen)

  1. Fundament: Schriftstufen im DesignSystem, Slider als Faktor, Reset, Hilfetext; Codeanzeigen mit eindeutiger Schrift und „Kopieren“-Knopf.
  2. Web-Views (pageZoom).
  3. Sync, Onboarding, Git-Server-Einstellungen.
  4. Settings-Panel (Umbrüche, Sprachmischung, einheitliche Zeilen/Icons).
  5. Chat und Rest, in Gruppen von etwa 10 Dateien.

Nicht betroffen: Wire-Protokoll; die Einstellung bleibt pro Gerät.

Geprüft: nichts gebaut, nur Entscheidungen. Nicht geprüft: Wirkung von pageZoom auf die einzelnen Web-Views, Platzbedarf der Panels bei 150 %.

## Stand nach grill-me (2026-10-31): Entscheidungen **Geltungsbereich:** nur `frontend/macos-iris` (Iris.app und IrisClient.app). IrisRemote (iOS) bleibt unverändert, ist gut lesbar. **Entscheidungen** 1. **Faktor statt Punkte:** Slider 85 % bis 150 %, Schritt 5 %, Standard 100 %. Alte Werte (−2…+12) werden einmalig zurückgesetzt. 2. **Nur der Slider** steuert die Größe (keine Systemeinstellung). Die rund 200 semantischen Stile (`.caption` usw.) werden auf die Schriftstufen umgestellt. 3. **Web-Views:** `pageZoom` auf den Slider-Faktor für alle 12 Web-Views, **ausgenommen PDF-Export**. Eigene HTML-Seiten bekommen eine CSS-Variable erst später und nur dort, wo `pageZoom` das Layout stört. 4. **Schriftstufen bei 100 %:** Titel 20 pt, Überschrift 15 pt, Text 13 pt (= Standard), Beschriftung 12 pt, Klein 11 pt (nichts darunter), Code 13 pt monospace. 5. **Icons wachsen mit** (eigene Stufe, gleicher Faktor). Feste Breiten, die Text enthalten, werden flexibel (behebt die Umbrüche in der Beschriftungsspalte). Reine Layoutmaße ohne Text (z. B. Sidebar-Breite) bleiben. **Reihenfolge (je ein PR, Issue bleibt offen, nach jedem Schritt `status/zu-testen`)** 1. Fundament: Schriftstufen im `DesignSystem`, Slider als Faktor, Reset, Hilfetext; Codeanzeigen mit eindeutiger Schrift und „Kopieren“-Knopf. 2. Web-Views (`pageZoom`). 3. Sync, Onboarding, Git-Server-Einstellungen. 4. Settings-Panel (Umbrüche, Sprachmischung, einheitliche Zeilen/Icons). 5. Chat und Rest, in Gruppen von etwa 10 Dateien. **Nicht betroffen:** Wire-Protokoll; die Einstellung bleibt pro Gerät. **Geprüft:** nichts gebaut, nur Entscheidungen. **Nicht geprüft:** Wirkung von `pageZoom` auf die einzelnen Web-Views, Platzbedarf der Panels bei 150 %.
Author
Owner

PR #252 gemergt: feat(ui): Schriftfaktor statt Zuschlag, Schriftstufen und Codeanzeige (iris/Iris#217)
http://docker:3000/iris/Iris/pulls/252

Commits:

  • feat(ui): Schriftfaktor statt Zuschlag, Schriftstufen und Codeanzeige (iris/Iris#217)

Stand Schritt 1: Fundament (Schriftfaktor, Schriftstufen, Codeanzeigen)

Geändert

  • Neu DSFont.swift: DS.FontScale (Schlüssel uiFontScale, 85–150 %, Schritt 5 %, Standard 100 %), DS.TextStyle mit den sechs Stufen (Titel 20, Überschrift 15, Text 13, Beschriftung 12, Klein 11, Code 13 pt), Modifier .dsFont(_:), DSCodeText (Menlo, markierbar, Kopieren-Knopf mit Zeiger-Cursor).
  • Slider „Font Size“ ist jetzt ein Faktor in Prozent. Der alte Zuschlag uiFontSizeOffset wird beim Start gelöscht (Reset wie vereinbart).
  • Die 16 Dateien, die den Zuschlag lasen, multiplizieren jetzt (N * fontScale statt N + fontOffset); Markdown-Theme, Editor-Styler und KaTeX-Größen inbegriffen. Größen und Aussehen bei 100 % unverändert zu vorher bei +0.
  • Git-Server-Einstellungen: Adresse, Fingerabdruck, Passwort und Datenort als DSCodeText.

Geprüft: Build des Schemas Iris über Xcode (AppleScript) erfolgreich.

Nicht geprüft: Aussehen und Bedienung von Hand (Slider, Git-Server-Einstellungen, Passwort abtippen); Build des Schemas IrisClient; Layout bei 150 %.

Grenzen / offen: Die 94 Dateien mit festen Größen und die semantischen Stile folgen dem Slider noch nicht (Schritte 3–5); Web-Views (Schritt 2) folgen ebenfalls noch nicht. Bei 100 % gelten noch die alten Einzelgrößen, nicht die neuen Stufen.

PR #252 gemergt: feat(ui): Schriftfaktor statt Zuschlag, Schriftstufen und Codeanzeige (iris/Iris#217) http://docker:3000/iris/Iris/pulls/252 Commits: - feat(ui): Schriftfaktor statt Zuschlag, Schriftstufen und Codeanzeige (iris/Iris#217) --- ## Stand Schritt 1: Fundament (Schriftfaktor, Schriftstufen, Codeanzeigen) **Geändert** - Neu `DSFont.swift`: `DS.FontScale` (Schlüssel `uiFontScale`, 85–150 %, Schritt 5 %, Standard 100 %), `DS.TextStyle` mit den sechs Stufen (Titel 20, Überschrift 15, Text 13, Beschriftung 12, Klein 11, Code 13 pt), Modifier `.dsFont(_:)`, `DSCodeText` (Menlo, markierbar, Kopieren-Knopf mit Zeiger-Cursor). - Slider „Font Size“ ist jetzt ein Faktor in Prozent. Der alte Zuschlag `uiFontSizeOffset` wird beim Start gelöscht (Reset wie vereinbart). - Die 16 Dateien, die den Zuschlag lasen, multiplizieren jetzt (`N * fontScale` statt `N + fontOffset`); Markdown-Theme, Editor-Styler und KaTeX-Größen inbegriffen. Größen und Aussehen bei 100 % unverändert zu vorher bei +0. - Git-Server-Einstellungen: Adresse, Fingerabdruck, Passwort und Datenort als `DSCodeText`. **Geprüft:** Build des Schemas Iris über Xcode (AppleScript) erfolgreich. **Nicht geprüft:** Aussehen und Bedienung von Hand (Slider, Git-Server-Einstellungen, Passwort abtippen); Build des Schemas IrisClient; Layout bei 150 %. **Grenzen / offen:** Die 94 Dateien mit festen Größen und die semantischen Stile folgen dem Slider noch nicht (Schritte 3–5); Web-Views (Schritt 2) folgen ebenfalls noch nicht. Bei 100 % gelten noch die alten Einzelgrößen, nicht die neuen Stufen.
Author
Owner

PR #253 gemergt: feat(ui): Web-Views folgen dem Schriftfaktor per pageZoom (iris/Iris#217)
http://docker:3000/iris/Iris/pulls/253

Commits:

  • feat(ui): Web-Views folgen dem Schriftfaktor per pageZoom (iris/Iris#217)

Stand Schritt 2: Web-Views folgen dem Schriftfaktor

Geändert

  • WKWebView.followFontScale() (in DSFont.swift) setzt pageZoom auf den Schriftfaktor und führt ihn nach, sobald der Slider bewegt wird (Beobachter hängt an der Web-View).
  • Angeschlossen: Hilfe (Handbuch), Canvas-Plugin-Blöcke (CanvasPluginWebBlockView), Hermes-Web-GUI, PinnedWebView (HTML-Vorschau, Plugin-Panels, Browser-Ansichten über den Server), Git-Server-Weboberfläche.
  • Bewusst ausgenommen: PDF-Export (fester Ausgabe) und der KaTeX-Renderer (bekommt seine Größe schon in Punkten vom Slider-Faktor, pageZoom würde doppelt skalieren).

Geprüft: Build des Schemas Iris über Xcode (AppleScript) erfolgreich.

Nicht geprüft: Verhalten von Hand (Slider bewegen mit offenem Handbuch, Plugin-Panel, HTML-Vorschau, Hermes-Web-GUI); Layout der Seiten bei 150 %; Build des Schemas IrisClient; ob alle 12 Dateien aus der Messung abgedeckt sind (acht Dateien erzeugen keine eigene Web-View oder sind PDF/KaTeX/Server).

Offen: Eigene HTML-Seiten (Hilfe, Marktplatz, Canvas) erhalten die CSS-Variable nur dort, wo pageZoom das Layout stört.

PR #253 gemergt: feat(ui): Web-Views folgen dem Schriftfaktor per pageZoom (iris/Iris#217) http://docker:3000/iris/Iris/pulls/253 Commits: - feat(ui): Web-Views folgen dem Schriftfaktor per pageZoom (iris/Iris#217) --- ## Stand Schritt 2: Web-Views folgen dem Schriftfaktor **Geändert** - `WKWebView.followFontScale()` (in `DSFont.swift`) setzt `pageZoom` auf den Schriftfaktor und führt ihn nach, sobald der Slider bewegt wird (Beobachter hängt an der Web-View). - Angeschlossen: Hilfe (Handbuch), Canvas-Plugin-Blöcke (`CanvasPluginWebBlockView`), Hermes-Web-GUI, `PinnedWebView` (HTML-Vorschau, Plugin-Panels, Browser-Ansichten über den Server), Git-Server-Weboberfläche. - Bewusst ausgenommen: PDF-Export (fester Ausgabe) und der KaTeX-Renderer (bekommt seine Größe schon in Punkten vom Slider-Faktor, `pageZoom` würde doppelt skalieren). **Geprüft:** Build des Schemas Iris über Xcode (AppleScript) erfolgreich. **Nicht geprüft:** Verhalten von Hand (Slider bewegen mit offenem Handbuch, Plugin-Panel, HTML-Vorschau, Hermes-Web-GUI); Layout der Seiten bei 150 %; Build des Schemas IrisClient; ob alle 12 Dateien aus der Messung abgedeckt sind (acht Dateien erzeugen keine eigene Web-View oder sind PDF/KaTeX/Server). **Offen:** Eigene HTML-Seiten (Hilfe, Marktplatz, Canvas) erhalten die CSS-Variable nur dort, wo `pageZoom` das Layout stört.
Author
Owner

PR #254 gemergt: feat(ui): Sync, Onboarding und Git-Server auf Schriftstufen (iris/Iris#217)
http://docker:3000/iris/Iris/pulls/254

Commits:

  • feat(ui): Sync, Onboarding und Git-Server auf Schriftstufen (iris/Iris#217)

Stand Schritt 3: Sync, Onboarding, Git-Server auf Schriftstufen

Geändert (466 Zeilen in 36 Dateien)

  • Onboarding (Mac und Client), Vault-Synchronisation (VaultSyncViews), Git-Server-Einstellungen, Linux-Server-Forgejo-Einstellungen und Vault-Git-Verlauf (lokal und remote) nutzen jetzt .dsFont(…) statt fester Größen und semantischer Stile; sie folgen damit dem Slider.
  • Abbildung: ≤ 11,5 pt → Klein (11), 12 → Beschriftung (12), 13 → Text (13), 14–17 → Überschrift (15), 18–22 → Titel (20); Monospace → Code (13, Menlo). Gewichte bleiben. Icons und große Zierschrift (≥ 23 pt) behalten ihre Größe mal Faktor (.dsFont(size:)).
  • Semantische Stile: caption/caption2/footnote → Klein, subheadline/callout → Beschriftung, body/headline → Text, title3/title2 → Überschrift, title → Titel.
  • Umstellung per Skript (Regex), nicht von Hand.

Geprüft: Build des Schemas Iris über Xcode (AppleScript) erfolgreich; in den umgestellten Dateien bleibt kein .font( übrig.

Nicht geprüft: Aussehen von Hand (Onboarding, Sync, Git-Server): Texte unter 11 pt werden größer, Monospace-Texte wachsen auf 13 pt, daher kann das Layout enger werden; Layout bei 150 %; Build des Schemas IrisClient.

Offen: Settings-Panel (Schritt 4), Chat und Rest (Schritt 5).

PR #254 gemergt: feat(ui): Sync, Onboarding und Git-Server auf Schriftstufen (iris/Iris#217) http://docker:3000/iris/Iris/pulls/254 Commits: - feat(ui): Sync, Onboarding und Git-Server auf Schriftstufen (iris/Iris#217) --- ## Stand Schritt 3: Sync, Onboarding, Git-Server auf Schriftstufen **Geändert** (466 Zeilen in 36 Dateien) - Onboarding (Mac und Client), Vault-Synchronisation (`VaultSyncViews`), Git-Server-Einstellungen, Linux-Server-Forgejo-Einstellungen und Vault-Git-Verlauf (lokal und remote) nutzen jetzt `.dsFont(…)` statt fester Größen und semantischer Stile; sie folgen damit dem Slider. - Abbildung: ≤ 11,5 pt → Klein (11), 12 → Beschriftung (12), 13 → Text (13), 14–17 → Überschrift (15), 18–22 → Titel (20); Monospace → Code (13, Menlo). Gewichte bleiben. Icons und große Zierschrift (≥ 23 pt) behalten ihre Größe mal Faktor (`.dsFont(size:)`). - Semantische Stile: caption/caption2/footnote → Klein, subheadline/callout → Beschriftung, body/headline → Text, title3/title2 → Überschrift, title → Titel. - Umstellung per Skript (Regex), nicht von Hand. **Geprüft:** Build des Schemas Iris über Xcode (AppleScript) erfolgreich; in den umgestellten Dateien bleibt kein `.font(` übrig. **Nicht geprüft:** Aussehen von Hand (Onboarding, Sync, Git-Server): Texte unter 11 pt werden größer, Monospace-Texte wachsen auf 13 pt, daher kann das Layout enger werden; Layout bei 150 %; Build des Schemas IrisClient. **Offen:** Settings-Panel (Schritt 4), Chat und Rest (Schritt 5).
Author
Owner

Korrektur zum Stand Schritt 3: Es sind 30 Dateien (nicht 36), 466 Zeilen umgestellt.

Korrektur zum Stand Schritt 3: Es sind 30 Dateien (nicht 36), 466 Zeilen umgestellt.
Author
Owner

PR #255 gemergt: feat(ui): Settings-Panel auf Schriftstufen, Beschriftungsspalten ohne Umbruch, Übersetzungen (iris/Iris#217)
http://docker:3000/iris/Iris/pulls/255

Commits:

  • feat(ui): Settings-Panel auf Schriftstufen, Beschriftungsspalten ohne Umbruch, Übersetzungen (iris/Iris#217)

Stand Schritt 4: Settings-Panel

Geändert

  • CompanionPanelView: alle Schriftgrößen auf die Stufen umgestellt (288 Stellen, .dsFont), Icons und Zierschrift mit Größe mal Faktor.
  • Umbrüche: Die 22 Beschriftungsspalten haben keine feste Breite mehr, sondern minWidth mal Faktor und fixedSize (Text bricht nicht mehr mitten im Wort um, die Spalte wächst bei Bedarf).
  • Sprachmischung: Für „Font Size“, „Notifications“, „Hide Steps“, „Banner when an Agent Job finishes.“, „Chat Log“, „Server URL“, „API Key (optional)“, „Always saved to Application Support/Iris/“ fehlte die deutsche Übersetzung; sie steht jetzt in Localizable.xcstrings. Der Hilfetext des Sliders ist als englischer Schlüssel mit deutscher Übersetzung angelegt.
  • Icons: In den Zeilen der unteren Liste (und den Kopfzeilen der ausklappbaren Bereiche) haben Icons eine einheitliche Breite (16 pt mal Faktor), damit die Beschriftungen fluchten.
  • Folgekorrektur aus Schritt 3: Texte direkt unter einem Text( wurden dort fälschlich als Icon-Größe behandelt; in 8 Dateien (37 Stellen) auf die passende Stufe gesetzt.

Geprüft: Build des Schemas Iris über Xcode (AppleScript) erfolgreich.

Nicht geprüft: Aussehen von Hand (Panel bei 100 % und 150 %, gedockt und abgekoppelt); Build des Schemas IrisClient; ob in der englischen UI-Sprache noch Mischtexte stehen (nur die fehlenden Übersetzungen der Panel-Datei geprüft).

Nicht umgesetzt: Die uneinheitlichen Zeilen (flache Zeilen „Iris LLM“ bis „Embedding“ gegen Karten bei „Remote-Server“, „Verbundene Geräte“, „Mac Remote Server“, „Chat Log“ mit anderem Abstand) sind noch nicht vereinheitlicht; das ist eine Gestaltungsentscheidung und gehört nach Alfs Wunsch zum späteren Design.

PR #255 gemergt: feat(ui): Settings-Panel auf Schriftstufen, Beschriftungsspalten ohne Umbruch, Übersetzungen (iris/Iris#217) http://docker:3000/iris/Iris/pulls/255 Commits: - feat(ui): Settings-Panel auf Schriftstufen, Beschriftungsspalten ohne Umbruch, Übersetzungen (iris/Iris#217) --- ## Stand Schritt 4: Settings-Panel **Geändert** - `CompanionPanelView`: alle Schriftgrößen auf die Stufen umgestellt (288 Stellen, `.dsFont`), Icons und Zierschrift mit Größe mal Faktor. - **Umbrüche:** Die 22 Beschriftungsspalten haben keine feste Breite mehr, sondern `minWidth` mal Faktor und `fixedSize` (Text bricht nicht mehr mitten im Wort um, die Spalte wächst bei Bedarf). - **Sprachmischung:** Für „Font Size“, „Notifications“, „Hide Steps“, „Banner when an Agent Job finishes.“, „Chat Log“, „Server URL“, „API Key (optional)“, „Always saved to Application Support/Iris/“ fehlte die deutsche Übersetzung; sie steht jetzt in `Localizable.xcstrings`. Der Hilfetext des Sliders ist als englischer Schlüssel mit deutscher Übersetzung angelegt. - **Icons:** In den Zeilen der unteren Liste (und den Kopfzeilen der ausklappbaren Bereiche) haben Icons eine einheitliche Breite (16 pt mal Faktor), damit die Beschriftungen fluchten. - Folgekorrektur aus Schritt 3: Texte direkt unter einem `Text(` wurden dort fälschlich als Icon-Größe behandelt; in 8 Dateien (37 Stellen) auf die passende Stufe gesetzt. **Geprüft:** Build des Schemas Iris über Xcode (AppleScript) erfolgreich. **Nicht geprüft:** Aussehen von Hand (Panel bei 100 % und 150 %, gedockt und abgekoppelt); Build des Schemas IrisClient; ob in der englischen UI-Sprache noch Mischtexte stehen (nur die fehlenden Übersetzungen der Panel-Datei geprüft). **Nicht umgesetzt:** Die uneinheitlichen Zeilen (flache Zeilen „Iris LLM“ bis „Embedding“ gegen Karten bei „Remote-Server“, „Verbundene Geräte“, „Mac Remote Server“, „Chat Log“ mit anderem Abstand) sind noch nicht vereinheitlicht; das ist eine Gestaltungsentscheidung und gehört nach Alfs Wunsch zum späteren Design.
Author
Owner

PR #256 gemergt: feat(ui): Chat, Canvas und Jobs auf Schriftstufen (iris/Iris#217)
http://docker:3000/iris/Iris/pulls/256

Commits:

  • feat(ui): Chat, Canvas und Jobs auf Schriftstufen (iris/Iris#217)

Stand Schritt 5a: Chat, Canvas, Jobs

Geändert (374 Zeilen in 22 Dateien)

  • Chat (ChatUIComponents, AgentJobChatPanel, RemoteJobChatView, DictationInputOverlay, ChatNotePanelView), Canvas-Blöcke, Inline-Ansichten, Markdown-Vorschau, Job-Listen, geplante Jobs, Job-Hooks und Systemprompt-Verwaltung nutzen .dsFont(…) statt fester Größen und folgen dem Faktor (bisher teils per Zuschlag, jetzt über die Stufen).
  • Abbildung wie in Schritt 3; Icons und Zierschrift ab 23 pt behalten Größe mal Faktor.

Bewusst nicht umgestellt: Avatar-Initialen in ChatUIComponents (Größe aus dem Avatar abgeleitet).

Geprüft: Build des Schemas Iris über Xcode (AppleScript) erfolgreich.

Nicht geprüft: Aussehen von Hand (Chatblasen, Job-Liste, Canvas) bei 100 % und 150 %; Texte unter 11 pt werden größer, das Layout kann enger werden; Build des Schemas IrisClient.

Offen: Vault, Workflows und Flows (5b); Plugins, Marktplatz, Remote und Rest (5c).

PR #256 gemergt: feat(ui): Chat, Canvas und Jobs auf Schriftstufen (iris/Iris#217) http://docker:3000/iris/Iris/pulls/256 Commits: - feat(ui): Chat, Canvas und Jobs auf Schriftstufen (iris/Iris#217) --- ## Stand Schritt 5a: Chat, Canvas, Jobs **Geändert** (374 Zeilen in 22 Dateien) - Chat (`ChatUIComponents`, `AgentJobChatPanel`, `RemoteJobChatView`, `DictationInputOverlay`, `ChatNotePanelView`), Canvas-Blöcke, Inline-Ansichten, Markdown-Vorschau, Job-Listen, geplante Jobs, Job-Hooks und Systemprompt-Verwaltung nutzen `.dsFont(…)` statt fester Größen und folgen dem Faktor (bisher teils per Zuschlag, jetzt über die Stufen). - Abbildung wie in Schritt 3; Icons und Zierschrift ab 23 pt behalten Größe mal Faktor. **Bewusst nicht umgestellt:** Avatar-Initialen in `ChatUIComponents` (Größe aus dem Avatar abgeleitet). **Geprüft:** Build des Schemas Iris über Xcode (AppleScript) erfolgreich. **Nicht geprüft:** Aussehen von Hand (Chatblasen, Job-Liste, Canvas) bei 100 % und 150 %; Texte unter 11 pt werden größer, das Layout kann enger werden; Build des Schemas IrisClient. **Offen:** Vault, Workflows und Flows (5b); Plugins, Marktplatz, Remote und Rest (5c).
Author
Owner

PR #257 gemergt: feat(ui): Vault, Workflows und Flows auf Schriftstufen (iris/Iris#217)
http://docker:3000/iris/Iris/pulls/257

Commits:

  • feat(ui): Vault, Workflows und Flows auf Schriftstufen (iris/Iris#217)

Stand Schritt 5b: Vault, Workflows, Flows

Geändert (rund 440 Zeilen in 24 Dateien)

  • Vault-Wartung, Vault-Index, Vault-Browser, Block-Editor und Werkzeugleiste, Notiz-Verlauf, Verzeichnis-Auswahl, Workflow-Editoren, Flow-Editor und -Debugger, Automation-Library und Dreamer-Vorlagen nutzen .dsFont(…) und folgen dem Faktor (Mac- und Remote-Varianten).
  • Abbildung wie in Schritt 3.

Geprüft: Build des Schemas Iris über Xcode (AppleScript) erfolgreich.

Nicht geprüft: Aussehen von Hand (Vault-Wartung, Editor, Flow-Debugger) bei 100 % und 150 %; Layout kann enger werden; Build des Schemas IrisClient.

Offen: Plugins, Marktplatz, Remote-Ansichten und Rest (5c); danach Nachmessen, ob feste Größen übrig sind.

PR #257 gemergt: feat(ui): Vault, Workflows und Flows auf Schriftstufen (iris/Iris#217) http://docker:3000/iris/Iris/pulls/257 Commits: - feat(ui): Vault, Workflows und Flows auf Schriftstufen (iris/Iris#217) --- ## Stand Schritt 5b: Vault, Workflows, Flows **Geändert** (rund 440 Zeilen in 24 Dateien) - Vault-Wartung, Vault-Index, Vault-Browser, Block-Editor und Werkzeugleiste, Notiz-Verlauf, Verzeichnis-Auswahl, Workflow-Editoren, Flow-Editor und -Debugger, Automation-Library und Dreamer-Vorlagen nutzen `.dsFont(…)` und folgen dem Faktor (Mac- und Remote-Varianten). - Abbildung wie in Schritt 3. **Geprüft:** Build des Schemas Iris über Xcode (AppleScript) erfolgreich. **Nicht geprüft:** Aussehen von Hand (Vault-Wartung, Editor, Flow-Debugger) bei 100 % und 150 %; Layout kann enger werden; Build des Schemas IrisClient. **Offen:** Plugins, Marktplatz, Remote-Ansichten und Rest (5c); danach Nachmessen, ob feste Größen übrig sind.
Author
Owner

PR #258 gemergt: feat(ui): Plugins, Marktplatz, Remote und Rest auf Schriftstufen (iris/Iris#217)
http://docker:3000/iris/Iris/pulls/258

Commits:

  • feat(ui): Plugins, Marktplatz, Remote und Rest auf Schriftstufen (iris/Iris#217)

Stand Schritt 5c: Plugins, Marktplatz, Remote und Rest

Geändert (rund 470 Zeilen in 28 Dateien)

  • Plugin-Verwaltung und -Installation, Marktplatz, Remote-Ansichten (Pairing, Server-Update, Backup, Videowatch, Qwen-TTS), Server-Sheets, QR-Pairing, Browser-Tab, System-Monitor, Über-Iris und weitere nutzen .dsFont(…).
  • Button-Stile im DesignSystem (Beschriftung 16 pt, Zusatzzeilen) folgen jetzt ebenfalls dem Faktor.

Messung danach (Nachmessen laut Issue): In Iris/*.swift gibt es kein .font(.system(size: und keine semantischen .font(.caption…) mehr außer: Avatar-Initialen in ChatUIComponents (aus der Avatargröße abgeleitet), Avatar-Initialen im DesignSystem, KaTeXInlineLineView (bekommt die Größe schon skaliert) und das Markdown-Theme (skaliert selbst mit dem Faktor).

Geprüft: Build des Schemas Iris über Xcode (AppleScript) erfolgreich.

Nicht geprüft: Aussehen von Hand bei 100 % und 150 %; Layout kann enger werden; Build des Schemas IrisClient; Stellen, die die Schrift anders setzen (z. B. NSFont, Font.custom, Attributed-Text) und vom Muster nicht erfasst sind.

Offen: Das Issue bleibt offen bis zum Test im Alltag; mögliche Nacharbeit: eigene HTML-Seiten per CSS-Variable (nur falls pageZoom stört), Layoutstellen mit fester Breite bei 150 %.

PR #258 gemergt: feat(ui): Plugins, Marktplatz, Remote und Rest auf Schriftstufen (iris/Iris#217) http://docker:3000/iris/Iris/pulls/258 Commits: - feat(ui): Plugins, Marktplatz, Remote und Rest auf Schriftstufen (iris/Iris#217) --- ## Stand Schritt 5c: Plugins, Marktplatz, Remote und Rest **Geändert** (rund 470 Zeilen in 28 Dateien) - Plugin-Verwaltung und -Installation, Marktplatz, Remote-Ansichten (Pairing, Server-Update, Backup, Videowatch, Qwen-TTS), Server-Sheets, QR-Pairing, Browser-Tab, System-Monitor, Über-Iris und weitere nutzen `.dsFont(…)`. - Button-Stile im `DesignSystem` (Beschriftung 16 pt, Zusatzzeilen) folgen jetzt ebenfalls dem Faktor. **Messung danach** (Nachmessen laut Issue): In `Iris/*.swift` gibt es kein `.font(.system(size:` und keine semantischen `.font(.caption…)` mehr außer: Avatar-Initialen in `ChatUIComponents` (aus der Avatargröße abgeleitet), Avatar-Initialen im `DesignSystem`, `KaTeXInlineLineView` (bekommt die Größe schon skaliert) und das Markdown-Theme (skaliert selbst mit dem Faktor). **Geprüft:** Build des Schemas Iris über Xcode (AppleScript) erfolgreich. **Nicht geprüft:** Aussehen von Hand bei 100 % und 150 %; Layout kann enger werden; Build des Schemas IrisClient; Stellen, die die Schrift anders setzen (z. B. `NSFont`, `Font.custom`, Attributed-Text) und vom Muster nicht erfasst sind. **Offen:** Das Issue bleibt offen bis zum Test im Alltag; mögliche Nacharbeit: eigene HTML-Seiten per CSS-Variable (nur falls `pageZoom` stört), Layoutstellen mit fester Breite bei 150 %.
alf 2026-10-31 10:15:09 +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/Iris#217
No description provided.