aboutsummaryrefslogtreecommitdiffstats
path: root/gpgwin.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'gpgwin.cpp')
-rw-r--r--gpgwin.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/gpgwin.cpp b/gpgwin.cpp
index 5c66324..0028c38 100644
--- a/gpgwin.cpp
+++ b/gpgwin.cpp
@@ -690,9 +690,14 @@ void GpgWin::sign()
QStringList *uidList = mKeyList->getChecked();
QByteArray *tmp = new QByteArray();
- if (mCtx->sign(uidList, edit->curTextPage()->toPlainText().toUtf8(), tmp)) {
+ if (mCtx->sign(uidList, edit->curTextPage()->toPlainText().toUtf8(), tmp)) {
QString *tmp2 = new QString(*tmp);
- edit->curTextPage()->setPlainText(*tmp2);
+ // beginEditBlock and endEditBlock() let operation look like single undo/redo operation
+ QTextCursor cursor(edit->curTextPage()->document());
+ cursor.beginEditBlock();
+ edit->curTextPage()->selectAll();
+ edit->curTextPage()->insertPlainText(*tmp2);
+ cursor.endEditBlock();
}
}