Adapt to new api

wilder
Laurent Montel 7 years ago
parent b53aad52c5
commit ec4e6898e1
  1. 2
      CMakeLists.txt
  2. 2
      src/editor/composer.h
  3. 67
      src/editor/kmcomposerwin.cpp
  4. 5
      src/editor/kmcomposerwin.h
  5. 15
      src/job/opencomposerjob.cpp
  6. 9
      src/kmcommands.cpp

@ -66,7 +66,7 @@ find_package(Qt5 ${QT_REQUIRED_VERSION} CONFIG REQUIRED DBus Network Test Widget
set(LIBGRAVATAR_VERSION_LIB "5.9.40")
set(MAILCOMMON_LIB_VERSION_LIB "5.9.41")
set(KDEPIM_APPS_LIB_VERSION_LIB "5.9.40")
set(MESSAGELIB_LIB_VERSION_LIB "5.9.61")
set(MESSAGELIB_LIB_VERSION_LIB "5.9.62")
set(LIBKLEO_LIB_VERSION_LIB "5.9.40")
set(PIMCOMMON_LIB_VERSION_LIB "5.9.42")
set(LIBKDEPIM_LIB_VERSION_LIB "5.9.40")

@ -75,8 +75,6 @@ public: // kmkernel, kmcommands, callback
bool isModified = false) = 0;
virtual void setCurrentTransport(int transportId) = 0;
virtual void setCurrentReplyTo(const QString &replyTo) = 0;
virtual void setFcc(const QString &idString) = 0;
/**
* Returns @c true while the message composing is in progress.

@ -312,11 +312,6 @@ KMComposerWin::KMComposerWin(const KMime::Message::Ptr &aMsg, bool lastSignState
mEdtFrom->setObjectName(QStringLiteral("fromLine"));
mEdtFrom->setRecentAddressConfig(MessageComposer::MessageComposerSettings::self()->config());
mEdtFrom->setToolTip(i18n("Set the \"From:\" email address for this message"));
mEdtReplyTo = new MessageComposer::ComposerLineEdit(true, mHeadersArea);
mEdtReplyTo->setObjectName(QStringLiteral("replyToLine"));
mEdtReplyTo->setRecentAddressConfig(MessageComposer::MessageComposerSettings::self()->config());
mEdtReplyTo->setToolTip(i18n("Set the \"Reply-To:\" email address for this message"));
connect(mEdtReplyTo, &MessageComposer::ComposerLineEdit::completionModeChanged, this, &KMComposerWin::slotCompletionModeChanged);
MessageComposer::RecipientsEditor *recipientsEditor = new MessageComposer::RecipientsEditor(mHeadersArea);
recipientsEditor->setRecentAddressConfig(MessageComposer::MessageComposerSettings::self()->config());
@ -334,7 +329,6 @@ KMComposerWin::KMComposerWin(const KMime::Message::Ptr &aMsg, bool lastSignState
mLblFcc = new QLabel(i18n("&Sent-Mail folder:"), mHeadersArea);
mLblTransport = new QLabel(i18n("&Mail transport:"), mHeadersArea);
mLblFrom = new QLabel(i18nc("sender address field", "&From:"), mHeadersArea);
mLblReplyTo = new QLabel(i18n("&Reply to:"), mHeadersArea);
mLblSubject = new QLabel(i18nc("@label:textbox Subject of email.", "S&ubject:"), mHeadersArea);
mShowHeaders = KMailSettings::self()->headers();
mDone = false;
@ -577,7 +571,6 @@ void KMComposerWin::readConfig(bool reload /* = false */)
{
mEdtFrom->setCompletionMode((KCompletion::CompletionMode)KMailSettings::self()->completionMode());
mComposerBase->recipientsEditor()->setCompletionMode((KCompletion::CompletionMode)KMailSettings::self()->completionMode());
mEdtReplyTo->setCompletionMode((KCompletion::CompletionMode)KMailSettings::self()->completionMode());
if (MessageCore::MessageCoreSettings::self()->useDefaultFonts()) {
mBodyFont = QFontDatabase::systemFont(QFontDatabase::GeneralFont);
@ -589,7 +582,6 @@ void KMComposerWin::readConfig(bool reload /* = false */)
slotUpdateFont();
mEdtFrom->setFont(mBodyFont);
mEdtReplyTo->setFont(mBodyFont);
mEdtSubject->setFont(mBodyFont);
if (!reload) {
@ -657,7 +649,7 @@ MessageComposer::Composer *KMComposerWin::createSimpleComposer()
charsets.insert(0, mOriginalPreferredCharset);
}
mComposerBase->setFrom(from());
mComposerBase->setReplyTo(replyTo());
//TODO mComposerBase->setReplyTo(replyTo());
mComposerBase->setSubject(subject());
mComposerBase->setCharsets(charsets);
return mComposerBase->createSimpleComposer();
@ -691,8 +683,6 @@ void KMComposerWin::slotUpdateView()
id = HDR_TRANSPORT;
} else if (act == mFromAction) {
id = HDR_FROM;
} else if (act == mReplyToAction) {
id = HDR_REPLY_TO;
} else if (act == mSubjectAction) {
id = HDR_SUBJECT;
} else if (act == mFccAction) {
@ -746,8 +736,6 @@ int KMComposerWin::calcColumnWidth(int which, long allShowing, int width) const
w = mLblTransport;
} else if (which == HDR_FROM) {
w = mLblFrom;
} else if (which == HDR_REPLY_TO) {
w = mLblReplyTo;
} else if (which == HDR_SUBJECT) {
w = mLblSubject;
} else {
@ -801,9 +789,6 @@ void KMComposerWin::rethinkFields(bool fromSlot, bool forceAllHeaders)
if (std::abs(showHeaders)&HDR_FROM) {
mLabelWidth = calcColumnWidth(HDR_FROM, showHeaders, mLabelWidth);
}
if (std::abs(showHeaders)&HDR_REPLY_TO) {
mLabelWidth = calcColumnWidth(HDR_REPLY_TO, showHeaders, mLabelWidth);
}
if (std::abs(showHeaders)&HDR_SUBJECT) {
mLabelWidth = calcColumnWidth(HDR_SUBJECT, showHeaders, mLabelWidth);
}
@ -840,23 +825,11 @@ void KMComposerWin::rethinkFields(bool fromSlot, bool forceAllHeaders)
QWidget *prevFocus = mEdtFrom;
if (!fromSlot) {
mReplyToAction->setChecked(std::abs(mShowHeaders)&HDR_REPLY_TO);
}
rethinkHeaderLine(showHeaders, HDR_REPLY_TO, row, mLblReplyTo, mEdtReplyTo);
if (showHeaders & HDR_REPLY_TO) {
(void)connectFocusMoving(prevFocus, mEdtReplyTo);
}
mGrid->addWidget(mComposerBase->recipientsEditor(), row, 0, 1, 2);
++row;
if (showHeaders & HDR_REPLY_TO) {
connect(mEdtReplyTo, &MessageComposer::ComposerLineEdit::focusDown, mComposerBase->recipientsEditor(), &KPIM::MultiplyingLineEditor::setFocusTop);
connect(mComposerBase->recipientsEditor(), &KPIM::MultiplyingLineEditor::focusUp, mEdtReplyTo, QOverload<>::of(&QWidget::setFocus));
} else {
connect(mEdtFrom, &MessageComposer::ComposerLineEdit::focusDown, mComposerBase->recipientsEditor(), &KPIM::MultiplyingLineEditor::setFocusTop);
connect(mComposerBase->recipientsEditor(), &KPIM::MultiplyingLineEditor::focusUp, mEdtFrom, QOverload<>::of(&QWidget::setFocus));
}
connect(mEdtFrom, &MessageComposer::ComposerLineEdit::focusDown, mComposerBase->recipientsEditor(), &KPIM::MultiplyingLineEditor::setFocusTop);
connect(mComposerBase->recipientsEditor(), &KPIM::MultiplyingLineEditor::focusUp, mEdtFrom, QOverload<>::of(&QWidget::setFocus));
connect(mComposerBase->recipientsEditor(), &KPIM::MultiplyingLineEditor::focusDown, mEdtSubject, QOverload<>::of(&QWidget::setFocus));
connect(mEdtSubject, &PimCommon::SpellCheckLineEdit::focusUp, mComposerBase->recipientsEditor(), &KPIM::MultiplyingLineEditor::setFocusBottom);
@ -877,9 +850,6 @@ void KMComposerWin::rethinkFields(bool fromSlot, bool forceAllHeaders)
mDictionaryAction->setEnabled(!mAllFieldsAction->isChecked());
mTransportAction->setEnabled(!mAllFieldsAction->isChecked());
mFromAction->setEnabled(!mAllFieldsAction->isChecked());
if (mReplyToAction) {
mReplyToAction->setEnabled(!mAllFieldsAction->isChecked());
}
mFccAction->setEnabled(!mAllFieldsAction->isChecked());
mSubjectAction->setEnabled(!mAllFieldsAction->isChecked());
mComposerBase->recipientsEditor()->setFirstColumnWidth(mLabelWidth);
@ -1247,9 +1217,6 @@ void KMComposerWin::setupActions(void)
mFromAction = new KToggleAction(i18n("&From"), this);
actionCollection()->addAction(QStringLiteral("show_from"), mFromAction);
connect(mFromAction, &KToggleAction::triggered, this, &KMComposerWin::slotUpdateView);
mReplyToAction = new KToggleAction(i18n("&Reply To"), this);
actionCollection()->addAction(QStringLiteral("show_reply_to"), mReplyToAction);
connect(mReplyToAction, &KToggleAction::triggered, this, &KMComposerWin::slotUpdateView);
mSubjectAction = new KToggleAction(
i18nc("@action:inmenu Show the subject in the composer window.", "S&ubject"), this);
actionCollection()->addAction(QStringLiteral("show_subject"), mSubjectAction);
@ -1488,15 +1455,6 @@ QString KMComposerWin::from() const
return MessageComposer::Util::cleanedUpHeaderString(mEdtFrom->text());
}
QString KMComposerWin::replyTo() const
{
if (mEdtReplyTo) {
return MessageComposer::Util::cleanedUpHeaderString(mEdtReplyTo->text());
} else {
return QString();
}
}
void KMComposerWin::slotInvalidIdentity()
{
mIncorrectIdentityFolderWarning->identityInvalid();
@ -1514,13 +1472,6 @@ void KMComposerWin::setCurrentTransport(int transportId)
}
}
void KMComposerWin::setCurrentReplyTo(const QString &replyTo)
{
if (mEdtReplyTo) {
mEdtReplyTo->setText(replyTo);
}
}
uint KMComposerWin::currentIdentity() const
{
return mComposerBase->identityCombo()->currentIdentity();
@ -1695,7 +1646,7 @@ void KMComposerWin::setMessage(const KMime::Message::Ptr &newMsg, bool lastSignS
mComposerBase->dictionary()->setCurrentByDictionaryName(ident.dictionary());
}
mEdtReplyTo->setText(mMsg->replyTo()->asUnicodeString());
//TODO FIXME mEdtReplyTo->setText(mMsg->replyTo()->asUnicodeString());
KMime::Content *msgContent = new KMime::Content;
msgContent->setContent(mMsg->encodedContent());
@ -1774,7 +1725,6 @@ bool KMComposerWin::isComposerModified() const
{
return mComposerBase->editor()->document()->isModified()
|| mEdtFrom->isModified()
|| (mEdtReplyTo && mEdtReplyTo->isModified())
|| mComposerBase->recipientsEditor()->isModified()
|| mEdtSubject->document()->isModified();
}
@ -1795,9 +1745,6 @@ void KMComposerWin::changeModifiedState(bool modified)
mComposerBase->editor()->document()->setModified(modified);
if (!modified) {
mEdtFrom->setModified(false);
if (mEdtReplyTo) {
mEdtReplyTo->setModified(false);
}
mComposerBase->recipientsEditor()->clearModified();
mEdtSubject->document()->setModified(false);
}
@ -2685,7 +2632,7 @@ void KMComposerWin::applyComposerSetting(MessageComposer::ComposerViewBase *mCom
charsets.insert(0, mOriginalPreferredCharset);
}
mComposerBase->setFrom(from());
mComposerBase->setReplyTo(replyTo());
//TODO FIXME mComposerBase->setReplyTo(replyTo());
mComposerBase->setSubject(subject());
mComposerBase->setCharsets(charsets);
mComposerBase->setUrgent(mUrgentAction->isChecked());
@ -3047,9 +2994,6 @@ void KMComposerWin::slotIdentityChanged(uint uoid, bool initialChange)
if (KEmailAddress::firstEmailAddress(from()).isEmpty()) {
mShowHeaders |= HDR_FROM;
}
if (mEdtReplyTo) {
mEdtReplyTo->setText(ident.replyToAddr());
}
// remove BCC of old identity and add BCC of new identity (if they differ)
const KIdentityManagement::Identity &oldIdentity
@ -3244,7 +3188,6 @@ void KMComposerWin::slotCompletionModeChanged(KCompletion::CompletionMode mode)
// sync all the lineedits to the same completion mode
mEdtFrom->setCompletionMode(mode);
mEdtReplyTo->setCompletionMode(mode);
mComposerBase->recipientsEditor()->setCompletionMode(mode);
}

@ -210,7 +210,6 @@ public: // kmkernel, kmcommands, callback
bool insertFromMimeData(const QMimeData *source, bool forceAttachment = false);
void setCurrentReplyTo(const QString &) override;
void setCollectionForNewMessage(const Akonadi::Collection &folder) override;
void addExtraCustomHeaders(const QMap<QByteArray, QString> &header) override;
@ -477,7 +476,6 @@ private:
*/
QString subject() const;
QString from() const;
QString replyTo() const;
/**
* Ask for confirmation if the message was changed before close.
@ -557,13 +555,11 @@ private:
QWidget *mMainWidget = nullptr;
MessageComposer::ComposerLineEdit *mEdtFrom = nullptr;
MessageComposer::ComposerLineEdit *mEdtReplyTo = nullptr;
PimCommon::LineEditWithAutoCorrection *mEdtSubject = nullptr;
QLabel *mLblIdentity = nullptr;
QLabel *mLblTransport = nullptr;
QLabel *mLblFcc = nullptr;
QLabel *mLblFrom = nullptr;
QLabel *mLblReplyTo = nullptr;
QLabel *mLblSubject = nullptr;
QLabel *mDictionaryLabel = nullptr;
QLabel *mCursorLineLabel = nullptr;
@ -599,7 +595,6 @@ private:
KToggleAction *mUrgentAction = nullptr;
KToggleAction *mAllFieldsAction = nullptr;
KToggleAction *mFromAction = nullptr;
KToggleAction *mReplyToAction = nullptr;
KToggleAction *mSubjectAction = nullptr;
KToggleAction *mIdentityAction = nullptr;
KToggleAction *mTransportAction = nullptr;

@ -77,6 +77,9 @@ void OpenComposerJob::start()
if (!mOpenComposerSettings.mSubject.isEmpty()) {
mMsg->subject()->fromUnicodeString(mOpenComposerSettings.mSubject, "utf-8");
}
if (!mOpenComposerSettings.mReplyTo.isEmpty()) {
mMsg->replyTo()->fromUnicodeString(mOpenComposerSettings.mReplyTo, "utf-8");
}
if (!mOpenComposerSettings.mMessageFile.isEmpty() && QFile::exists(mOpenComposerSettings.mMessageFile)) {
QFile f(mOpenComposerSettings.mMessageFile);
@ -111,14 +114,6 @@ void OpenComposerJob::start()
void OpenComposerJob::slotOpenComposer()
{
if (!mOpenComposerSettings.mInReplyTo.isEmpty()) {
KMime::Headers::InReplyTo *header = new KMime::Headers::InReplyTo;
header->fromUnicodeString(mOpenComposerSettings.mInReplyTo, "utf-8");
mMsg->setHeader(header);
}
mMsg->assemble();
KMail::Composer *cWin = KMail::makeComposer(mMsg, false, false, mContext, mIdentityId);
if (!mOpenComposerSettings.mTo.isEmpty()) {
cWin->setFocusToSubject();
@ -134,10 +129,6 @@ void OpenComposerJob::slotOpenComposer()
}
cWin->addAttachment((*it), QString());
}
if (!mOpenComposerSettings.mReplyTo.isEmpty()) {
cWin->setCurrentReplyTo(mOpenComposerSettings.mReplyTo);
}
if (!mOpenComposerSettings.mCustomHeaders.isEmpty()) {
QMap<QByteArray, QString> extraCustomHeaders;
QStringList::ConstIterator end = mOpenComposerSettings.mCustomHeaders.constEnd();

@ -637,11 +637,6 @@ KMCommand::Result KMEditItemCommand::execute()
}
}
if (auto hdr = msg->replyTo(false)) {
const QString replyTo = hdr->asUnicodeString();
win->setCurrentReplyTo(replyTo);
}
const MailTransport::SentBehaviourAttribute *sentAttribute = item.attribute<MailTransport::SentBehaviourAttribute>();
if (sentAttribute && (sentAttribute->sentBehaviour() == MailTransport::SentBehaviourAttribute::MoveToCollection)) {
win->setFcc(QString::number(sentAttribute->moveToCollection().id()));
@ -1799,10 +1794,6 @@ KMCommand::Result KMResendMessageCommand::execute()
newMsg->contentType()->setCharset(MimeTreeParser::NodeHelper::charset(msg.data()));
KMail::Composer *win = KMail::makeComposer();
if (auto hdr = msg->replyTo(false)) {
const QString replyTo = hdr->asUnicodeString();
win->setCurrentReplyTo(replyTo);
}
bool lastEncrypt = false;
bool lastSign = false;
KMail::Util::lastEncryptAndSignState(lastEncrypt, lastSign, msg);

Loading…
Cancel
Save