
On Fri, 2004-02-06 at 22:23, bulia byak wrote:
I may be misunderstanding you. What you say may be correct, but it does not apply to this bug as far as I can tell. What needs to be logged here is nothing but a repr change, namely a change in the content of the text node inside tspan. This is what is broken. The fact that undo does not know about cursor movements is irrelevant - it must simply restore the previous content of the node, and that's what it cannot do properly. The fact that the behavior is the same no matter whether you edit the text node by the text tool or directly in the XML editor proves that the text tool is not the problem, the problem is inside the undo system.
I just went back to reread the bug; I'd missed your latest followup and continued to misunderstand the bug.
I'm still not convinced the problem isn't in the text tool -- but I'll sit down and trace through the sequence of events before commenting further.
Assuming no bugs in document-undo.cpp, that you're getting "operation did not complete transaction" messages is an indicator that some of the undo invariants are being violated by either SPTextContext, SPSelectContext, or SPText.
-mental