Schriftgrößen: Slider soll die ganze App steuern, inklusive Web-Views #217
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/Iris#217
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?
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/2undh/Hverwechselt (kleine monospace Schrift, siehe Anhänge).Befund (gemessen am 2026-10-28, Stand
main)Der Slider (
CompanionPanelView.swift, Bereich −2…+12, Schritt 1, SchlüsseluiFontSizeOffset) 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).frontend/macos-iris/Iris)uiFontSizeOffsetlesen.font(.system(size: N)).caption,.callout…)WKWebView-DateienuiFontSizeOffsetOhne 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:
Weitere Auffälligkeiten (Settings-Panel, Screenshot 12:54)
Vorschlag (Ausgangslage; maßgeblich ist der Abschnitt „Entschieden“)
DesignSystem: etwa 6 (Titel, Überschrift, Text, Beschriftung, klein, Code), jede mit Basisgröße.pageZoomfü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.0/O,I/l/1,Z/2), in der Größe des Slider-Faktors, mit „Kopieren“-Knopf.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.
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.
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
.captionusw.) werden auf die Schriftstufen umgestellt.pageZoomauf 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, wopageZoomdas Layout stört.Reihenfolge (je ein PR, Issue bleibt offen, nach jedem Schritt
status/zu-testen)DesignSystem, Slider als Faktor, Reset, Hilfetext; Codeanzeigen mit eindeutiger Schrift und „Kopieren“-Knopf.pageZoom).Nicht betroffen: Wire-Protokoll; die Einstellung bleibt pro Gerät.
Geprüft: nichts gebaut, nur Entscheidungen. Nicht geprüft: Wirkung von
pageZoomauf die einzelnen Web-Views, Platzbedarf der Panels bei 150 %.PR #252 gemergt: feat(ui): Schriftfaktor statt Zuschlag, Schriftstufen und Codeanzeige (iris/Iris#217)
http://docker:3000/iris/Iris/pulls/252
Commits:
Stand Schritt 1: Fundament (Schriftfaktor, Schriftstufen, Codeanzeigen)
Geändert
DSFont.swift:DS.FontScale(SchlüsseluiFontScale, 85–150 %, Schritt 5 %, Standard 100 %),DS.TextStylemit 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).uiFontSizeOffsetwird beim Start gelöscht (Reset wie vereinbart).N * fontScalestattN + fontOffset); Markdown-Theme, Editor-Styler und KaTeX-Größen inbegriffen. Größen und Aussehen bei 100 % unverändert zu vorher bei +0.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 #253 gemergt: feat(ui): Web-Views folgen dem Schriftfaktor per pageZoom (iris/Iris#217)
http://docker:3000/iris/Iris/pulls/253
Commits:
Stand Schritt 2: Web-Views folgen dem Schriftfaktor
Geändert
WKWebView.followFontScale()(inDSFont.swift) setztpageZoomauf den Schriftfaktor und führt ihn nach, sobald der Slider bewegt wird (Beobachter hängt an der Web-View).CanvasPluginWebBlockView), Hermes-Web-GUI,PinnedWebView(HTML-Vorschau, Plugin-Panels, Browser-Ansichten über den Server), Git-Server-Weboberfläche.pageZoomwü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
pageZoomdas Layout stört.PR #254 gemergt: feat(ui): Sync, Onboarding und Git-Server auf Schriftstufen (iris/Iris#217)
http://docker:3000/iris/Iris/pulls/254
Commits:
Stand Schritt 3: Sync, Onboarding, Git-Server auf Schriftstufen
Geändert (466 Zeilen in 36 Dateien)
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..dsFont(size:)).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).
Korrektur zum Stand Schritt 3: Es sind 30 Dateien (nicht 36), 466 Zeilen umgestellt.
PR #255 gemergt: feat(ui): Settings-Panel auf Schriftstufen, Beschriftungsspalten ohne Umbruch, Übersetzungen (iris/Iris#217)
http://docker:3000/iris/Iris/pulls/255
Commits:
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.minWidthmal Faktor undfixedSize(Text bricht nicht mehr mitten im Wort um, die Spalte wächst bei Bedarf).Localizable.xcstrings. Der Hilfetext des Sliders ist als englischer Schlüssel mit deutscher Übersetzung angelegt.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 #256 gemergt: feat(ui): Chat, Canvas und Jobs auf Schriftstufen (iris/Iris#217)
http://docker:3000/iris/Iris/pulls/256
Commits:
Stand Schritt 5a: Chat, Canvas, Jobs
Geändert (374 Zeilen in 22 Dateien)
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).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 #257 gemergt: feat(ui): Vault, Workflows und Flows auf Schriftstufen (iris/Iris#217)
http://docker:3000/iris/Iris/pulls/257
Commits:
Stand Schritt 5b: Vault, Workflows, Flows
Geändert (rund 440 Zeilen in 24 Dateien)
.dsFont(…)und folgen dem Faktor (Mac- und Remote-Varianten).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 #258 gemergt: feat(ui): Plugins, Marktplatz, Remote und Rest auf Schriftstufen (iris/Iris#217)
http://docker:3000/iris/Iris/pulls/258
Commits:
Stand Schritt 5c: Plugins, Marktplatz, Remote und Rest
Geändert (rund 470 Zeilen in 28 Dateien)
.dsFont(…).DesignSystem(Beschriftung 16 pt, Zusatzzeilen) folgen jetzt ebenfalls dem Faktor.Messung danach (Nachmessen laut Issue): In
Iris/*.swiftgibt es kein.font(.system(size:und keine semantischen.font(.caption…)mehr außer: Avatar-Initialen inChatUIComponents(aus der Avatargröße abgeleitet), Avatar-Initialen imDesignSystem,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
pageZoomstört), Layoutstellen mit fester Breite bei 150 %.