From 93395c9e012d17e2b5f817bbafac7490c45ba8be Mon Sep 17 00:00:00 2001 From: Richard Date: Fri, 2 Oct 2026 16:30:39 +0200 Subject: [PATCH] Stufe 2 (#764): Probelauf CEF-Einbettung dokumentiert Co-Authored-By: Claude Opus 5.5 --- docs/umsetzungsplaene/WebUI-Only-und-Englisch.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/docs/umsetzungsplaene/WebUI-Only-und-Englisch.md b/docs/umsetzungsplaene/WebUI-Only-und-Englisch.md index 54f3d46..218826f 100644 --- a/docs/umsetzungsplaene/WebUI-Only-und-Englisch.md +++ b/docs/umsetzungsplaene/WebUI-Only-und-Englisch.md @@ -120,6 +120,18 @@ Einbettungsbibliothek ist vor dem Bauen mit dem Menschen abzustimmen (neue Abhä Einmal-Link über den lokalen Socket bleibt der Anmeldeweg: Auch ein eingebettetes Fenster soll das Sitzungstoken nicht in einer Adresse tragen. +**Einbettung, Entscheidung des Menschen 2026-10-02: Avalonia + CEF (Chromium mitgeliefert).** +Probelauf am selben Tag mit `CefGlue.Next.Avalonia` 152.7977.831 (CEF 152, net10): + +| Befund | Folge | +|---|---| +| Mit **Avalonia 12.1.1** (Stand des Repos) bricht es beim Anlegen des Browsers: `TypeLoadException: Avalonia.Input.GotFocusEventArgs`. Das Paket ist gegen Avalonia 11.3 gebaut | Die Hülle braucht **Avalonia 11.3.17**. Zwei Avalonia-Fassungen in einem Ausgabeordner gehen nicht | +| Mit Avalonia 11.3.17: Seite geladen, JavaScript ausgewertet — **Windows und Linux-VM (Xvfb :97)**, mit und ohne GPU | technisch tragfähig | +| Windows braucht ein App-Manifest mit `supportedOS` (sonst „Unable to create child window for native control host") | ins Projekt | +| Linux: Chromium wird nur bei `build -r linux-x64` kopiert, nicht bei `publish`; `icudtl.dat` und `.pak` müssen **neben** `libcef.so` liegen (das Paket legt sie nach `Resources/`); ohne `no-first-run` hängt Chromium an einem Nutzungsbedingungen-Dialog | Packaging-Schritt in `deploy/publish.py`, Schalter fest setzen | +| Größe: ~370 MB (linux-x64) zusätzlich | Paket wird entsprechend größer | +| Die Linux-/macOS-CEF-Pakete baut ein kleiner Fork (`Deon-Berlin/CefGlue`) selbst; Windows nutzt die offiziellen `chromiumembeddedframework.runtime` | Lieferkette: native Binärdateien von einem Einzelprojekt | + ### Stufe 3 — Avalonia-Fenster entfernen (Flash: mit Vorsicht) - `Views/`, `Controls/`, `Converters/`, ViewModels der Fenster, `App.axaml` — weg.