Samenwerken laat de inhoud van een tabel achter bij de andere deelnemer #2749
Labels
No labels
accepted
bug
declined
docs
duplicate
enhancement
good first issue
in-progress
needs-info
privacy
release-blocker
security
triage
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
LibreKAT/Ocideck#2749
Loading…
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?
Wat je wilt bereiken
Een correctie in een tabelcel, ook het weghalen van een persoonsgegeven, komt bij de andere deelnemer aan, zonder dat twee mensen in verschillende cellen elkaars werk stil overschrijven.
Wat er nu mist
SlideFieldinlib/collab/deck_op.dartsynchroniseert de opmaak van de tabel (tableEditable, kolomuitlijning) maar niet de rijen.CollabSessionControllerhoudt tabelrijen bewust buiten het sync-oppervlak, samen met annotaties en het zegel. Een nieuwe dia reist compleet mee. Een wijziging in een cel van een bestaande dia niet. De editor waarschuwt; de wijziging komt niet aan. De andere deelnemer kan de oude cel exporteren.docs/KNOWN_LIMITATIONS.mdnoemt dit als v1-grens.Bestandsformaat
Geen wijziging aan de
.md. De tabel blijft een gewone Markdown-tabel. De operatie leeft alleen in de sessie.Oplossingsrichting
Aanbeveling: bouwen, als slot en niet als cel-CRDT.
Eén schrijver tegelijk op de tabel. Bij het loslaten gaat de hele tabel als één operatie over het bestaande versleutelde kanaal. Een misvormde operatie wordt geweigerd, zoals de andere operaties. Valt de schrijver weg vóór het loslaten, dan blijft de lokale tabel staan en is er een conflict: geen stille samenvoeging van cellen. De waarschuwing blijft tot het slot er is.
Niet: de hele tabel bij elke toetsaanslag vervangen. Niet: een nieuw kanaal of een server.
Afweging