feat: Strg+S speichert das Dokument direkt als Datei (D74)

Die Geste, die jeder zuerst versucht, tat bisher das Falsche (Browser-Dialog
„Seite speichern"). Jetzt ruft sie saveLocalFile(): mit gemerktem Handle
dialogfrei in dieselbe Datei, sichtbar bestätigt durch einen Petrol-Haken am
Dokumentnamen; ohne Handle wie der Menü-Eintrag. Legenden-Zeile hint_save in
neun Sprachen. Nebenbefund behoben: adoptFile() wartet jetzt auf die aus
IndexedDB zurückgeholten Handles — ein Doppelklick unmittelbar nach dem
App-Start legte sonst ein Duplikat an statt dasselbe Dokument zu
aktualisieren.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
mhoennig
2026-08-25 15:15:50 +02:00
co-authored by Claude Fable 5
parent 45a52c15f9
commit 72ab9746d5
5 changed files with 127 additions and 12 deletions
+7
View File
@@ -88,6 +88,7 @@
- [^] #ed.snaps.manual: Save a state by hand, before a larger change (XS) %% ten minutes is the wrong beat for that moment
- [^] #ed.files: Open and save .werkbaum files (S)
- [^] #ed.files.inplace: Saving writes back into the opened file (S) %% File System Access, Chromium
- [x] #ed.files.ctrls: Ctrl+S saves the document as a file (XS) %% in place with a remembered handle
+ [^] #ed.fresh: Show what is new since your last visit (S)
- [^] #ed.fresh.news: A star in the header, with the last few days (S) %% see D58
+ [?] #ed.percolor: A pastel colour per person (S)
@@ -615,6 +616,12 @@
handle: saving writes back into the same file, and the same file reopens
into the same document. Firefox and Safari keep the plain download.
#ed.files.ctrls
The save gesture everyone tries first. Without it the browser offers to
save the page — the one dialog nobody wants. With a remembered handle it
writes straight back in place and flashes the document name as its answer;
otherwise it behaves like the menu entry.
#ed.fresh
For documents that come from outside, nodes that went to production since
your last visit get a yellow halo. New means live, not "line added" — a line