Currently, when we cancel an edition, the client goes back to the last value of the document it has cached locally. This doesn't play well with the new synchronization feature.
Currently, this is buggy, so we need to do something about it. Here are scenarii:
Because we have the list of operations, we could reapply all the operations but the last one. This seem costly, but might work. In this case, we should also tell all the other peers to do the same, and then reapply their changes (like a git rebase command). We could apply all the changes and only then render once.
We could also tell the users we aren't capable of canceling an edit in this context, if we see it's too complex to do.
Currently, when we cancel an edition, the client goes back to the last value of the document it has cached locally. This doesn't play well with the new synchronization feature.
Currently, this is buggy, so we need to do something about it. Here are scenarii:
git rebase
command). We could apply all the changes and only then render once.