feat(office): mobileEdit am Telefon, PDF-Umweg entfällt
Ein Office-Dokument öffnete am Telefon als gewandeltes PDF, weil OnlyOffices Oberfläche auf 400 Pixeln nichts vom Dokument übrig lässt. Die Begründung war falsch: Die Ermittlungsliste bietet zu jeder Endung mehrere Aktionen an, und OnlyOffice/Euro-Office führen neben `edit` auch `mobileEdit` – dieselbe Adresse mit `?mobile=1`, dahinter eine für kleine Schirme gebaute Oberfläche. `EditURL` kannte nur `edit` und `view`; die Handy-Fassung lag die ganze Zeit in der Tabelle und wurde nie abgerufen. Entschieden wird am Zeigegerät, nicht an der Fensterbreite – ein schmales Fenster auf dem Schreibtisch ist immer noch eine Maus. Mit dem Anlass fällt die Notlösung: preview.go (229 Zeilen), convert.go (271) samt Test, files.preview_version (Migration 000026), die Sonderabfrage im GC, die Route und dreizehn Fundstellen im Frontend. convert.go hatte keinen anderen Aufrufer – die gesamte Umwandlung nach PDF existierte allein für diese Ansicht. Wer ein PDF braucht, exportiert es im Editor. Die Dateien unter previews/ sammelt der GC ein. Zwei Fehler, die dabei sichtbar wurden: fix(history): „Edit" schloss die Datei, statt den Editor zu öffnen. Beim Wechsel räumt React erst die alte Ansicht ab; der Aufräumer von useBackClose ruft history.back(), das verzögert wirkt und deshalb den Eintrag verbrauchte, den der Editor gerade angelegt hatte. Ein Zähler für selbst ausgelöste Schritte verschluckt genau diese popstate. fix(filetypes): `.txt` ging gar nicht auf. Es stand in officeExtensions und lief damit in den Office-Zweig statt in den eingebauten Text-Editor – am Telefon in die PDF-Umwandlung, die daran scheiterte. `md`, `log` und `rst` standen nie drin; das war die Asymmetrie. Dazu Euro-Office als Compose-Profil (Abbild 6,99 GB, nachgemessen – die Ankündigung nennt 5) und die Android-App als Idee. Geprüft: go build/vet sauber, tsc sauber, 37 Vitest-Tests, alle 234 Prüfungen der sieben Selbsttest-Suiten grün. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
6042f6f2f6
commit
944b2c63e2
23 files changed
+284
-788
No files matched your search
+75
-2
@@ -1356,8 +1356,9 @@ Die Daten liegen seit dem 23.08.2026 in einem gewöhnlichen Verzeichnis
|
||||
## Office – Collabora / OnlyOffice / Euro-Office (24.08.2026)
|
||||
|
||||
Aether ist WOPI-Host; der Office-Server holt die Datei selbst ab und schreibt
|
||||
sie zurück. **Gemessen wurde mit Collabora**; OnlyOffice und Euro-Office
|
||||
sprechen dieselbe Schnittstelle, sind hier aber nie gelaufen (Arbeitsspeicher).
|
||||
sie zurück. Gemessen wurde mit **Collabora** und – seit dem 16.09.2026 – mit
|
||||
**Euro-Office**, beide auf dieser Anlage. OnlyOffice lief hier nur bis zur
|
||||
Ermittlung; Euro-Office ist sein Fork und spricht dieselbe Schnittstelle.
|
||||
|
||||
### Öffnen
|
||||
- [ ] Rechtsklick auf .odt/.docx/.ods → „Edit in Office…" erscheint 🔎
|
||||
@@ -1395,6 +1396,78 @@ sprechen dieselbe Schnittstelle, sind hier aber nie gelaufen (Arbeitsspeicher).
|
||||
|
||||
---
|
||||
|
||||
## Office am Telefon: `mobileEdit` statt PDF-Umweg (16.09.2026)
|
||||
|
||||
Ein Office-Dokument öffnete am Telefon als gewandeltes PDF, mit einem
|
||||
„Edit"-Knopf hinein. Begründet war das mit OnlyOffices Oberfläche, die auf
|
||||
400 Pixeln nichts vom Dokument übrig lässt.
|
||||
|
||||
**Die Begründung war falsch – wir hatten die falsche Oberfläche bestellt.**
|
||||
Die Ermittlungsliste bietet zu jeder Endung mehrere Aktionen an, und für
|
||||
`.docx` stehen dort acht. Nachgesehen im laufenden Euro-Office:
|
||||
|
||||
edit …/hosting/wopi/word/edit
|
||||
mobileEdit …/hosting/wopi/word/edit?mobile=1
|
||||
|
||||
`EditURL` kannte nur `edit` und `view`. Die Handy-Fassung lag die ganze Zeit
|
||||
in der Tabelle und wurde nie abgerufen.
|
||||
|
||||
- [x] Am Telefon öffnet ein `.docx` in der Handy-Oberfläche 🔎
|
||||
- [x] Am Schreibtisch unverändert die Schreibtisch-Fassung 🔎
|
||||
- [x] Schmales Fenster am Schreibtisch → weiterhin Schreibtisch-Fassung
|
||||
(entschieden wird am Zeigegerät, nicht an der Breite)
|
||||
- [x] Collabora kennt die Aktionen nicht → fällt auf `edit` zurück
|
||||
- [ ] Nur-Lese-Freigabe am Telefon → `mobileView`
|
||||
|
||||
**Vorher geprüft, ob es überhaupt etwas ändert.** Beide Aktionen zeigen auf
|
||||
denselben Pfad; erst der Vergleich der Adressen zeigte das `?mobile=1`. Ohne
|
||||
diesen Blick wäre der Umbau eine Umbenennung gewesen.
|
||||
|
||||
### Die PDF-Ansicht ist entfallen
|
||||
|
||||
Mit dem Anlass fiel die Notlösung: `internal/office/preview.go` (229 Zeilen),
|
||||
`convert.go` (271) samt Test, `files.preview_version` (Migration 000026), die
|
||||
Sonderabfrage im GC, die Route und dreizehn Fundstellen im Frontend.
|
||||
|
||||
`convert.go` hatte **keinen anderen Aufrufer** – die gesamte Umwandlung nach
|
||||
PDF existierte allein für diese Ansicht. Wer ein PDF braucht, exportiert es
|
||||
im Editor.
|
||||
|
||||
- [x] Alle 234 Prüfungen der sieben Selbsttest-Suiten weiterhin grün
|
||||
- [ ] `previews/` ist nach einem GC-Lauf leer (24 h Schonfrist beachten)
|
||||
- [ ] Admin → abgeleitete Daten zeigt danach 0 für `previews`
|
||||
|
||||
### Der Zurück-Fehler dahinter
|
||||
|
||||
Auf „Edit" in der PDF-Ansicht schloss sich die Datei, statt den Editor zu
|
||||
öffnen. Ursache war kein Office, sondern der Verlauf: Beim Wechsel räumt React
|
||||
erst die alte Ansicht ab, dann baut es die neue auf. Der Aufräumer von
|
||||
`useBackClose` ruft `history.back()` – das wirkt aber **verzögert** und
|
||||
verbrauchte deshalb den Eintrag, den der Editor gerade angelegt hatte.
|
||||
|
||||
Behoben mit einem Zähler für selbst ausgelöste Schritte: So viele `popstate`
|
||||
werden verschluckt. Die Geste des Nutzers erkennt man daran, dass keiner
|
||||
offen ist.
|
||||
|
||||
- [x] Aus der Vorschau in den Editor wechseln → der Editor bleibt offen 🔎
|
||||
- [ ] Zurück-Geste im Editor → schließt den Editor, nicht die App
|
||||
- [ ] Zwei Ebenen (Vorschau unter Editor) → jede Geste schließt genau eine
|
||||
- [ ] Ungespeicherte Änderungen: „Abbrechen" lässt die Ansicht offen
|
||||
|
||||
### `.txt` ging gar nicht auf
|
||||
|
||||
`txt` stand in `officeExtensions`. Eine 12-Byte-Notiz lief damit in den
|
||||
Office-Zweig statt in den eingebauten Text-Editor – und am Telefon in die
|
||||
PDF-Umwandlung, die daran scheiterte. `md`, `log` und `rst` standen nie drin;
|
||||
das war die Asymmetrie, über die man stolperte.
|
||||
|
||||
- [x] `.txt` antippen → eingebauter Text-Editor, Bearbeiten und Speichern 🔎
|
||||
- [x] `.md` unverändert
|
||||
- [ ] `.csv` weiterhin im Tabellenprogramm (bleibt bewusst Office)
|
||||
- [ ] „Edit in Office…" erscheint für `.txt` nicht mehr im Kontextmenü
|
||||
|
||||
---
|
||||
|
||||
## Absender / Korrespondent (23.08.2026)
|
||||
|
||||
Das zweite Ordnungsmerkmal neben den Etiketten. Unterschied: genau **einer**
|
||||
|
||||
Reference in new issue
Block a user