feat: Adresszeile folgt dem Dokument, Live-Sitzung ebenso (D80)
Wer bei offenem `?live=` umschaltet, behielt die alte Adresse — optisch falsch, und ein Neuladen holte das falsche Dokument zurück. Der Parameter gehört jetzt zum aktiven Dokument, für `?live=` wie für `?sourceUrl=`; `?etherpad=` wird nur noch weggeräumt. Fremde Parameter (`?server=`) bleiben wörtlich stehen, damit die URL lesbar bleibt. Dabei gefunden: Die Live-Sitzung lief weiter, während ein anderes Dokument vorn stand — `setLiveText()` schrieb fremde Änderungen in dessen Text. Die Sitzung gehört jetzt dem sichtbaren Dokument: Umschalten beendet sie, Umschalten auf ein Server-Dokument nimmt sie auf. Was noch im Debounce steckt, geht vorher raus, und `pushLive()` hält seine Sitzung fest statt anzunehmen, dass sich über ein `await` hinweg nichts ändert. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
627f6feca8
commit
fdca934cf0
@@ -105,6 +105,11 @@ above you, it stays where it was in the text.
|
||||
The document's **title** is its name (everyone sees the same one), the full
|
||||
address sits in the tooltip.
|
||||
|
||||
**The address bar follows the document you are on.** Switch to a local plan and
|
||||
`?live=` goes away; switch to another server document and its address takes its
|
||||
place — so a reload brings back what you were looking at. Picking a server
|
||||
document from the menu also puts you back into the shared session.
|
||||
|
||||
When two changes really overlap — the same lines — a bar at the top asks whose
|
||||
version should win: *take theirs* or *keep mine*. Everything else the server
|
||||
merges without asking. Nothing is lost either way: the discarded state stays in
|
||||
|
||||
Reference in New Issue
Block a user