From 79407530bcf2e41de4794eeded37825fbc63a17e Mon Sep 17 00:00:00 2001 From: David Faure <faure@kde.org> Date: Mon, 2 Nov 2015 08:52:17 +0100 Subject: [PATCH 21/74] Fix duplicate signature when we use CTRL+N in composer. Backport of a bugfix from Laurent in master. --- kmail/editor/kmcomposewin.cpp | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/kmail/editor/kmcomposewin.cpp b/kmail/editor/kmcomposewin.cpp index 8845319b59..f8816323ad 100644 --- a/kmail/editor/kmcomposewin.cpp +++ b/kmail/editor/kmcomposewin.cpp @@ -2304,14 +2304,19 @@ void KMComposeWin::slotNewComposer() KMComposeWin *win; KMime::Message::Ptr msg( new KMime::Message ); - MessageHelper::initHeader( msg, KMKernel::self()->identityManager() ); - win = new KMComposeWin( msg, false, false, KMail::Composer::New ); + MessageHelper::initHeader(msg, KMKernel::self()->identityManager(), currentIdentity()); + TemplateParser::TemplateParser parser(msg, TemplateParser::TemplateParser::NewMessage); + parser.setIdentityManager(KMKernel::self()->identityManager()); + parser.process(msg, mCollectionForNewMessage); + win = new KMComposeWin(msg, false, false, KMail::Composer::New, currentIdentity()); win->setCollectionForNewMessage(mCollectionForNewMessage); - win->setCurrentIdentity(currentIdentity()); + bool forceCursorPosition = parser.cursorPositionWasSet(); + if (forceCursorPosition) { + win->setFocusToEditor(); + } win->show(); } - void KMComposeWin::slotUpdWinTitle() { QString s( mEdtSubject->toPlainText() ); -- 2.14.1