Fix cursor position adjustment when removing strings
authorJiang Jiang <jiang.jiang@nokia.com>
Mon, 24 Jan 2011 18:09:38 +0000 (19:09 +0100)
committerJiang Jiang <jiang.jiang@nokia.com>
Tue, 25 Jan 2011 12:42:50 +0000 (13:42 +0100)
commit34c297faca93e1286573b2a01127e4e7af00aff2
treedc35f70a98e3e5701d33c9fb7c7304057f5d45df
parenta0e0a9378d10db9c8ab3ba4d59f5c576ee4cbc40
Fix cursor position adjustment when removing strings

Commit 0ba1b4d0 introduced a regression to QTextDocument: it postponed
cursor position adjustment until the move operation is done, but
contentsChanged will be triggered by finishEdit() in this move
operation, thus cursor positions in this signal handler will be in
inconsistent states (normally we should first update cursor position
then trigger contentsChanged). In this case we should also postpone
finishEdit() handling after cursor positions have been adjusted, then
the states expose to applications will be consistent.

Task-number: QTBUG-15857
Reviewed-by: Eskil
src/gui/text/qtextdocument_p.cpp
tests/auto/qtextcursor/tst_qtextcursor.cpp