aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHannu Koivisto <hannu.koivisto@vincit.fi>2010-11-16 15:32:40 +0200
committerPekka Vuorela <pekka.ta.vuorela@nokia.com>2010-11-16 16:28:00 +0200
commit9e234f249c3e2f2c286d2770019f8e33b6d93f74 (patch)
treeb2492a93debe13a322e74ebffcee464f3457be75
parenta55a852e2eb183f45fa7bca2ce08a477aab27995 (diff)
Fixes: MTextEdit pre-edit text style storing...
RevBy: Pekka Vuorela Details: ...not to mess with global state (model's cursor).
-rwxr-xr-xsrc/corelib/widgets/mtextedit.cpp10
1 files changed, 4 insertions, 6 deletions
diff --git a/src/corelib/widgets/mtextedit.cpp b/src/corelib/widgets/mtextedit.cpp
index d5351d52..4db8e770 100755
--- a/src/corelib/widgets/mtextedit.cpp
+++ b/src/corelib/widgets/mtextedit.cpp
@@ -1051,12 +1051,12 @@ QEvent::Type MTextEditPrivate::translateGraphicsSceneMouseTypeToQMouse(QEvent::T
*/
void MTextEditPrivate::storePreeditTextStyling(int start, int end)
{
- QTextCursor *textCursor = cursor();
- int cursorPosition = textCursor->position();
+ Q_Q(MTextEdit);
+ QTextCursor textCursor(q->document());
for (int i = start + 1; i <= end; ++i) {
- textCursor->setPosition(i, QTextCursor::KeepAnchor);
- QTextCharFormat charFormat = textCursor->charFormat();
+ textCursor.setPosition(i, QTextCursor::KeepAnchor);
+ const QTextCharFormat charFormat = textCursor.charFormat();
if (preeditStyling.isEmpty() == false) {
styleData &currentStyle = preeditStyling.last();
@@ -1078,8 +1078,6 @@ void MTextEditPrivate::storePreeditTextStyling(int start, int end)
preeditStyling.push_back(newStyle);
}
}
-
- textCursor->setPosition(cursorPosition, QTextCursor::KeepAnchor);
}