Git commit d726853d46acb75daf68865d03b639020404556f by Montel Laurent. Committed on 31/07/2016 at 19:58. Pushed by mlaurent into branch 'Applications/16.08'. Avoid to create temporary identitymanager (use kmail instance =3D> don't cr= eate twice identitymanager) M +1 -1 CMakeLists.txt M +14 -6 kmail/editorsendcheckplugins/automaticaddcontacts/automatica= ddcontactsconfiguretab.cpp M +8 -4 kmail/editorsendcheckplugins/automaticaddcontacts/automatica= ddcontactsconfiguretab.h M +3 -3 kmail/editorsendcheckplugins/automaticaddcontacts/automatica= ddcontactsconfigurewidget.cpp M +1 -1 kmail/editorsendcheckplugins/automaticaddcontacts/automatica= ddcontactsconfigurewidget.h M +2 -2 kmail/editorsendcheckplugins/automaticaddcontacts/automatica= ddcontactsplugin.cpp M +1 -1 kmail/editorsendcheckplugins/automaticaddcontacts/automatica= ddcontactsplugin.h M +1 -1 kmail/editorsendcheckplugins/automaticaddcontacts/autotests/= automaticaddcontactsconfiguretabtest.cpp M +1 -1 kmail/editorsendcheckplugins/automaticaddcontacts/autotests/= automaticaddcontactsconfigurewidgettest.cpp M +1 -1 kmail/editorsendcheckplugins/automaticaddcontacts/autotests/= automaticaddcontactsplugintest.cpp M +2 -2 kmail/editorsendcheckplugins/checkbeforesend/autotests/check= beforesendconfigurewidgettest.cpp M +1 -1 kmail/editorsendcheckplugins/checkbeforesend/autotests/check= beforesendplugintest.cpp M +2 -2 kmail/editorsendcheckplugins/checkbeforesend/checkbeforesend= plugin.cpp M +1 -1 kmail/editorsendcheckplugins/checkbeforesend/checkbeforesend= plugin.h M +2 -2 kmail/editorsendcheckplugins/checkbeforesend/configurewidget= /checkbeforesendconfigurewidget.cpp M +1 -1 kmail/editorsendcheckplugins/checkbeforesend/configurewidget= /checkbeforesendconfigurewidget.h M +1 -1 kmail/editorsendcheckplugins/confirm-address/autotests/confi= rmaddressconfiguretabtest.cpp M +1 -1 kmail/editorsendcheckplugins/confirm-address/autotests/confi= rmaddressconfigurewidgettest.cpp M +1 -1 kmail/editorsendcheckplugins/confirm-address/autotests/confi= rmaddressplugintest.cpp M +15 -6 kmail/editorsendcheckplugins/confirm-address/confirmaddressc= onfiguretab.cpp M +7 -2 kmail/editorsendcheckplugins/confirm-address/confirmaddressc= onfiguretab.h M +3 -3 kmail/editorsendcheckplugins/confirm-address/confirmaddressc= onfigurewidget.cpp M +1 -1 kmail/editorsendcheckplugins/confirm-address/confirmaddressc= onfigurewidget.h M +2 -2 kmail/editorsendcheckplugins/confirm-address/confirmaddressp= lugin.cpp M +1 -1 kmail/editorsendcheckplugins/confirm-address/confirmaddressp= lugin.h http://commits.kde.org/kdepim-addons/d726853d46acb75daf68865d03b63902040455= 6f diff --git a/CMakeLists.txt b/CMakeLists.txt index 2ebd3f4..b5437e3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -68,7 +68,7 @@ set(LIBKLEO_LIB_VERSION "5.2.90") set(AKONADI_LIB_VERSION "5.2.90") set(INCIDENCEEDITOR_LIB_VERSION "5.2.90") set(KTNEF_LIB_VERSION "5.2.90") -set(MESSAGELIB_LIB_VERSION "5.2.93") +set(MESSAGELIB_LIB_VERSION "5.2.94") set(AKONADICALENDAR_LIB_VERSION "5.2.90") set(CALENDAR_UTILS_VERSION "5.2.90") = diff --git a/kmail/editorsendcheckplugins/automaticaddcontacts/automaticadd= contactsconfiguretab.cpp b/kmail/editorsendcheckplugins/automaticaddcontact= s/automaticaddcontactsconfiguretab.cpp index 168391e..a2c0b81 100644 --- a/kmail/editorsendcheckplugins/automaticaddcontacts/automaticaddcontact= sconfiguretab.cpp +++ b/kmail/editorsendcheckplugins/automaticaddcontacts/automaticaddcontact= sconfiguretab.cpp @@ -27,7 +27,7 @@ #include #include = -AutomaticAddContactsConfigureTab::AutomaticAddContactsConfigureTab(QWidget= *parent) +AutomaticAddContactsConfigureTab::AutomaticAddContactsConfigureTab(KIdenti= tyManagement::IdentityManager *identityManagement, QWidget *parent) : QWidget(parent) { QHBoxLayout *mainLayout =3D new QHBoxLayout(this); @@ -36,7 +36,7 @@ AutomaticAddContactsConfigureTab::AutomaticAddContactsCon= figureTab(QWidget *pare mTabWidget =3D new QTabWidget(this); mTabWidget->setObjectName(QStringLiteral("tabwidget")); mainLayout->addWidget(mTabWidget); - initTab(); + initTab(identityManagement); } = AutomaticAddContactsConfigureTab::~AutomaticAddContactsConfigureTab() @@ -44,17 +44,25 @@ AutomaticAddContactsConfigureTab::~AutomaticAddContacts= ConfigureTab() = } = -void AutomaticAddContactsConfigureTab::initTab() +void AutomaticAddContactsConfigureTab::initTab(KIdentityManagement::Identi= tyManager *identityManager) { - KIdentityManagement::IdentityManager manager(true); - KIdentityManagement::IdentityManager::ConstIterator end =3D manager.en= d(); - for (KIdentityManagement::IdentityManager::ConstIterator it =3D manage= r.begin(); it !=3D end; ++it) { + bool needToDeleteIdentity =3D false; + if (!identityManager) { + needToDeleteIdentity =3D true; + identityManager =3D new KIdentityManagement::IdentityManager(true); + } + KIdentityManagement::IdentityManager::ConstIterator end =3D identityMa= nager->end(); + for (KIdentityManagement::IdentityManager::ConstIterator it =3D identi= tyManager->begin(); it !=3D end; ++it) { AutomaticAddContactsTabWidget *w =3D new AutomaticAddContactsTabWi= dget(this); connect(w, &AutomaticAddContactsTabWidget::configureChanged, this,= &AutomaticAddContactsConfigureTab::configureChanged); mTabWidget->addTab(w, (*it).identityName()); w->setIdentity((*it).uoid()); mListTabWidget.append(w); } + if (needToDeleteIdentity) { + delete identityManager; + identityManager =3D Q_NULLPTR; + } } = void AutomaticAddContactsConfigureTab::loadSettings() diff --git a/kmail/editorsendcheckplugins/automaticaddcontacts/automaticadd= contactsconfiguretab.h b/kmail/editorsendcheckplugins/automaticaddcontacts/= automaticaddcontactsconfiguretab.h index ebf7196..dd8d5e2 100644 --- a/kmail/editorsendcheckplugins/automaticaddcontacts/automaticaddcontact= sconfiguretab.h +++ b/kmail/editorsendcheckplugins/automaticaddcontacts/automaticaddcontact= sconfiguretab.h @@ -22,14 +22,19 @@ = #include class QTabWidget; -class QTabWidget; class KConfigGroup; class AutomaticAddContactsTabWidget; + +namespace KIdentityManagement +{ +class IdentityManager; +} + class AutomaticAddContactsConfigureTab : public QWidget { Q_OBJECT public: - explicit AutomaticAddContactsConfigureTab(QWidget *parent =3D Q_NULLPT= R); + explicit AutomaticAddContactsConfigureTab(KIdentityManagement::Identit= yManager *identityManagement, QWidget *parent =3D Q_NULLPTR); ~AutomaticAddContactsConfigureTab(); = void loadSettings(); @@ -40,10 +45,9 @@ Q_SIGNALS: void configureChanged(); = private: - void initTab(); + void initTab(KIdentityManagement::IdentityManager *identityManager); QTabWidget *mTabWidget; QList mListTabWidget; - }; = #endif // AUTOMATICADDCONTACTSCONFIGURETAB_H diff --git a/kmail/editorsendcheckplugins/automaticaddcontacts/automaticadd= contactsconfigurewidget.cpp b/kmail/editorsendcheckplugins/automaticaddcont= acts/automaticaddcontactsconfigurewidget.cpp index 9a9f2f5..5735b5b 100644 --- a/kmail/editorsendcheckplugins/automaticaddcontacts/automaticaddcontact= sconfigurewidget.cpp +++ b/kmail/editorsendcheckplugins/automaticaddcontacts/automaticaddcontact= sconfigurewidget.cpp @@ -29,13 +29,13 @@ #include #include = -AutomaticAddContactsConfigureWidget::AutomaticAddContactsConfigureWidget(Q= Widget *parent) - : MessageComposer::PluginEditorCheckBeforeSendConfigureWidget(parent) +AutomaticAddContactsConfigureWidget::AutomaticAddContactsConfigureWidget(K= IdentityManagement::IdentityManager *identityManager, QWidget *parent) + : MessageComposer::PluginEditorCheckBeforeSendConfigureWidget(identity= Manager, parent) { QVBoxLayout *mainLayout =3D new QVBoxLayout(this); mainLayout->setObjectName(QStringLiteral("mainlayout")); = - mConfigureTab =3D new AutomaticAddContactsConfigureTab(this); + mConfigureTab =3D new AutomaticAddContactsConfigureTab(identityManagem= ent(), this); mConfigureTab->setObjectName(QStringLiteral("configuretab")); mainLayout->addWidget(mConfigureTab); connect(mConfigureTab, &AutomaticAddContactsConfigureTab::configureCha= nged, this, &AutomaticAddContactsConfigureWidget::configureChanged); diff --git a/kmail/editorsendcheckplugins/automaticaddcontacts/automaticadd= contactsconfigurewidget.h b/kmail/editorsendcheckplugins/automaticaddcontac= ts/automaticaddcontactsconfigurewidget.h index 443af88..3da59ef 100644 --- a/kmail/editorsendcheckplugins/automaticaddcontacts/automaticaddcontact= sconfigurewidget.h +++ b/kmail/editorsendcheckplugins/automaticaddcontacts/automaticaddcontact= sconfigurewidget.h @@ -27,7 +27,7 @@ class AutomaticAddContactsConfigureWidget : public Messag= eComposer::PluginEditor { Q_OBJECT public: - explicit AutomaticAddContactsConfigureWidget(QWidget *parent =3D Q_NUL= LPTR); + explicit AutomaticAddContactsConfigureWidget(KIdentityManagement::Iden= tityManager *identityManager, QWidget *parent =3D Q_NULLPTR); ~AutomaticAddContactsConfigureWidget(); = void loadSettings() Q_DECL_OVERRIDE; diff --git a/kmail/editorsendcheckplugins/automaticaddcontacts/automaticadd= contactsplugin.cpp b/kmail/editorsendcheckplugins/automaticaddcontacts/auto= maticaddcontactsplugin.cpp index c6db4c6..c49115f 100644 --- a/kmail/editorsendcheckplugins/automaticaddcontacts/automaticaddcontact= splugin.cpp +++ b/kmail/editorsendcheckplugins/automaticaddcontacts/automaticaddcontact= splugin.cpp @@ -49,9 +49,9 @@ bool AutomaticAddContactsPlugin::hasConfigureSupport() co= nst return true; } = -MessageComposer::PluginEditorCheckBeforeSendConfigureWidgetSetting Automat= icAddContactsPlugin::createConfigureWidget(QWidget *parent) const +MessageComposer::PluginEditorCheckBeforeSendConfigureWidgetSetting Automat= icAddContactsPlugin::createConfigureWidget(KIdentityManagement::IdentityMan= ager *identityManager, QWidget *parent) const { - AutomaticAddContactsConfigureWidget *w =3D new AutomaticAddContactsCon= figureWidget(parent); + AutomaticAddContactsConfigureWidget *w =3D new AutomaticAddContactsCon= figureWidget(identityManager, parent); MessageComposer::PluginEditorCheckBeforeSendConfigureWidgetSetting set= tings(w, i18n("Add Automatically Contacts")); return settings; } diff --git a/kmail/editorsendcheckplugins/automaticaddcontacts/automaticadd= contactsplugin.h b/kmail/editorsendcheckplugins/automaticaddcontacts/automa= ticaddcontactsplugin.h index cb1d779..81df0ee 100644 --- a/kmail/editorsendcheckplugins/automaticaddcontacts/automaticaddcontact= splugin.h +++ b/kmail/editorsendcheckplugins/automaticaddcontacts/automaticaddcontact= splugin.h @@ -31,7 +31,7 @@ public: = MessageComposer::PluginEditorCheckBeforeSendInterface *createInterface= (QObject *parent) Q_DECL_OVERRIDE; bool hasConfigureSupport() const Q_DECL_OVERRIDE; - MessageComposer::PluginEditorCheckBeforeSendConfigureWidgetSetting cre= ateConfigureWidget(QWidget *parent) const Q_DECL_OVERRIDE; + MessageComposer::PluginEditorCheckBeforeSendConfigureWidgetSetting cre= ateConfigureWidget(KIdentityManagement::IdentityManager *identityManager, Q= Widget *parent) const Q_DECL_OVERRIDE; }; = #endif // AUTOMATICADDCONTACTSPLUGIN_H diff --git a/kmail/editorsendcheckplugins/automaticaddcontacts/autotests/au= tomaticaddcontactsconfiguretabtest.cpp b/kmail/editorsendcheckplugins/autom= aticaddcontacts/autotests/automaticaddcontactsconfiguretabtest.cpp index 8486265..9d91744 100644 --- a/kmail/editorsendcheckplugins/automaticaddcontacts/autotests/automatic= addcontactsconfiguretabtest.cpp +++ b/kmail/editorsendcheckplugins/automaticaddcontacts/autotests/automatic= addcontactsconfiguretabtest.cpp @@ -37,7 +37,7 @@ AutomaticAddContactsConfigureTabTest::~AutomaticAddContac= tsConfigureTabTest() = void AutomaticAddContactsConfigureTabTest::shouldHaveDefaultValue() { - AutomaticAddContactsConfigureTab w; + AutomaticAddContactsConfigureTab w(Q_NULLPTR); QHBoxLayout *vboxlayout =3D w.findChild(QStringLiteral(= "mainlayout")); QVERIFY(vboxlayout); QCOMPARE(vboxlayout->margin(), 0); diff --git a/kmail/editorsendcheckplugins/automaticaddcontacts/autotests/au= tomaticaddcontactsconfigurewidgettest.cpp b/kmail/editorsendcheckplugins/au= tomaticaddcontacts/autotests/automaticaddcontactsconfigurewidgettest.cpp index ededc17..2c8130d 100644 --- a/kmail/editorsendcheckplugins/automaticaddcontacts/autotests/automatic= addcontactsconfigurewidgettest.cpp +++ b/kmail/editorsendcheckplugins/automaticaddcontacts/autotests/automatic= addcontactsconfigurewidgettest.cpp @@ -38,7 +38,7 @@ AutomaticAddContactsConfigureWidgetTest::~AutomaticAddCon= tactsConfigureWidgetTes = void AutomaticAddContactsConfigureWidgetTest::shouldHaveDefaultValue() { - AutomaticAddContactsConfigureWidget w; + AutomaticAddContactsConfigureWidget w(Q_NULLPTR); = QVBoxLayout *mainLayout =3D w.findChild(QStringLiteral(= "mainlayout")); QVERIFY(mainLayout); diff --git a/kmail/editorsendcheckplugins/automaticaddcontacts/autotests/au= tomaticaddcontactsplugintest.cpp b/kmail/editorsendcheckplugins/automaticad= dcontacts/autotests/automaticaddcontactsplugintest.cpp index 3ebd734..11e8cca 100644 --- a/kmail/editorsendcheckplugins/automaticaddcontacts/autotests/automatic= addcontactsplugintest.cpp +++ b/kmail/editorsendcheckplugins/automaticaddcontacts/autotests/automatic= addcontactsplugintest.cpp @@ -37,7 +37,7 @@ void AutomaticAddContactsPluginTest::shouldHaveDefaultVal= ue() AutomaticAddContactsPlugin plugin; QVERIFY(plugin.hasConfigureSupport()); QVERIFY(plugin.createInterface(this)); - QVERIFY(plugin.createConfigureWidget(new QWidget()).configureWidget); + QVERIFY(plugin.createConfigureWidget(Q_NULLPTR, new QWidget()).configu= reWidget); } = QTEST_MAIN(AutomaticAddContactsPluginTest) diff --git a/kmail/editorsendcheckplugins/checkbeforesend/autotests/checkbe= foresendconfigurewidgettest.cpp b/kmail/editorsendcheckplugins/checkbefores= end/autotests/checkbeforesendconfigurewidgettest.cpp index 559be93..869277c 100644 --- a/kmail/editorsendcheckplugins/checkbeforesend/autotests/checkbeforesen= dconfigurewidgettest.cpp +++ b/kmail/editorsendcheckplugins/checkbeforesend/autotests/checkbeforesen= dconfigurewidgettest.cpp @@ -37,7 +37,7 @@ CheckBeforeSendConfigureWidgetTest::~CheckBeforeSendConfi= gureWidgetTest() = void CheckBeforeSendConfigureWidgetTest::shouldHaveDefaultValue() { - CheckBeforeSendConfigureWidget w; + CheckBeforeSendConfigureWidget w(Q_NULLPTR); QVBoxLayout *vboxlayout =3D w.findChild(QStringLiteral(= "mainlayout")); QVERIFY(vboxlayout); = @@ -64,7 +64,7 @@ void CheckBeforeSendConfigureWidgetTest::shouldHaveDefaul= tValue() = void CheckBeforeSendConfigureWidgetTest::shouldResetValue() { - CheckBeforeSendConfigureWidget w; + CheckBeforeSendConfigureWidget w(Q_NULLPTR); = QCheckBox *mCheckPlainTextMail =3D w.findChild(QStringLit= eral("checkplaintext")); QCheckBox *mCheckMailTransport =3D w.findChild(QStringLit= eral("smtpdefinedinidentity")); diff --git a/kmail/editorsendcheckplugins/checkbeforesend/autotests/checkbe= foresendplugintest.cpp b/kmail/editorsendcheckplugins/checkbeforesend/autot= ests/checkbeforesendplugintest.cpp index 3cedf2e..2af6d94 100644 --- a/kmail/editorsendcheckplugins/checkbeforesend/autotests/checkbeforesen= dplugintest.cpp +++ b/kmail/editorsendcheckplugins/checkbeforesend/autotests/checkbeforesen= dplugintest.cpp @@ -37,7 +37,7 @@ void CheckBeforeSendPluginTest::shouldHaveDefaultValue() CheckBeforeSendPlugin plugin; QVERIFY(plugin.hasConfigureSupport()); QVERIFY(plugin.createInterface(this)); - QVERIFY(plugin.createConfigureWidget(new QWidget()).configureWidget); + QVERIFY(plugin.createConfigureWidget(Q_NULLPTR, new QWidget()).configu= reWidget); } = QTEST_MAIN(CheckBeforeSendPluginTest) diff --git a/kmail/editorsendcheckplugins/checkbeforesend/checkbeforesendpl= ugin.cpp b/kmail/editorsendcheckplugins/checkbeforesend/checkbeforesendplug= in.cpp index 4d9d462..dc862b2 100644 --- a/kmail/editorsendcheckplugins/checkbeforesend/checkbeforesendplugin.cpp +++ b/kmail/editorsendcheckplugins/checkbeforesend/checkbeforesendplugin.cpp @@ -49,9 +49,9 @@ bool CheckBeforeSendPlugin::hasConfigureSupport() const return true; } = -MessageComposer::PluginEditorCheckBeforeSendConfigureWidgetSetting CheckBe= foreSendPlugin::createConfigureWidget(QWidget *parent) const +MessageComposer::PluginEditorCheckBeforeSendConfigureWidgetSetting CheckBe= foreSendPlugin::createConfigureWidget(KIdentityManagement::IdentityManager = *identityManager, QWidget *parent) const { - CheckBeforeSendConfigureWidget *w =3D new CheckBeforeSendConfigureWidg= et(parent); + CheckBeforeSendConfigureWidget *w =3D new CheckBeforeSendConfigureWidg= et(identityManager, parent); MessageComposer::PluginEditorCheckBeforeSendConfigureWidgetSetting set= tings(w, i18n("Check Before Send Email")); return settings; } diff --git a/kmail/editorsendcheckplugins/checkbeforesend/checkbeforesendpl= ugin.h b/kmail/editorsendcheckplugins/checkbeforesend/checkbeforesendplugin= .h index 3b1b6b7..3624acd 100644 --- a/kmail/editorsendcheckplugins/checkbeforesend/checkbeforesendplugin.h +++ b/kmail/editorsendcheckplugins/checkbeforesend/checkbeforesendplugin.h @@ -31,7 +31,7 @@ public: = MessageComposer::PluginEditorCheckBeforeSendInterface *createInterface= (QObject *parent) Q_DECL_OVERRIDE; bool hasConfigureSupport() const Q_DECL_OVERRIDE; - MessageComposer::PluginEditorCheckBeforeSendConfigureWidgetSetting cre= ateConfigureWidget(QWidget *parent) const Q_DECL_OVERRIDE; + MessageComposer::PluginEditorCheckBeforeSendConfigureWidgetSetting cre= ateConfigureWidget(KIdentityManagement::IdentityManager *identityManager, Q= Widget *parent) const Q_DECL_OVERRIDE; }; = #endif // CHECKBEFORESENDPLUGIN_H diff --git a/kmail/editorsendcheckplugins/checkbeforesend/configurewidget/c= heckbeforesendconfigurewidget.cpp b/kmail/editorsendcheckplugins/checkbefor= esend/configurewidget/checkbeforesendconfigurewidget.cpp index 760905c..ea9ff64 100644 --- a/kmail/editorsendcheckplugins/checkbeforesend/configurewidget/checkbef= oresendconfigurewidget.cpp +++ b/kmail/editorsendcheckplugins/checkbeforesend/configurewidget/checkbef= oresendconfigurewidget.cpp @@ -24,8 +24,8 @@ #include #include = -CheckBeforeSendConfigureWidget::CheckBeforeSendConfigureWidget(QWidget *pa= rent) - : MessageComposer::PluginEditorCheckBeforeSendConfigureWidget(parent) +CheckBeforeSendConfigureWidget::CheckBeforeSendConfigureWidget(KIdentityMa= nagement::IdentityManager *identityManager, QWidget *parent) + : MessageComposer::PluginEditorCheckBeforeSendConfigureWidget(identity= Manager, parent) { QVBoxLayout *mainLayout =3D new QVBoxLayout(this); mainLayout->setObjectName(QStringLiteral("mainlayout")); diff --git a/kmail/editorsendcheckplugins/checkbeforesend/configurewidget/c= heckbeforesendconfigurewidget.h b/kmail/editorsendcheckplugins/checkbefores= end/configurewidget/checkbeforesendconfigurewidget.h index 596162c..4c9e50d 100644 --- a/kmail/editorsendcheckplugins/checkbeforesend/configurewidget/checkbef= oresendconfigurewidget.h +++ b/kmail/editorsendcheckplugins/checkbeforesend/configurewidget/checkbef= oresendconfigurewidget.h @@ -28,7 +28,7 @@ class CheckBeforeSendConfigureWidget : public MessageComp= oser::PluginEditorCheck { Q_OBJECT public: - explicit CheckBeforeSendConfigureWidget(QWidget *parent =3D Q_NULLPTR); + explicit CheckBeforeSendConfigureWidget(KIdentityManagement::IdentityM= anager *identityManager, QWidget *parent =3D Q_NULLPTR); ~CheckBeforeSendConfigureWidget(); = void loadSettings() Q_DECL_OVERRIDE; diff --git a/kmail/editorsendcheckplugins/confirm-address/autotests/confirm= addressconfiguretabtest.cpp b/kmail/editorsendcheckplugins/confirm-address/= autotests/confirmaddressconfiguretabtest.cpp index ad5ebce..a3e7553 100644 --- a/kmail/editorsendcheckplugins/confirm-address/autotests/confirmaddress= configuretabtest.cpp +++ b/kmail/editorsendcheckplugins/confirm-address/autotests/confirmaddress= configuretabtest.cpp @@ -37,7 +37,7 @@ ConfirmAddressConfigureTabTest::~ConfirmAddressConfigureT= abTest() = void ConfirmAddressConfigureTabTest::shouldHaveDefaultValue() { - ConfirmAddressConfigureTab w; + ConfirmAddressConfigureTab w(Q_NULLPTR); QVBoxLayout *vboxlayout =3D w.findChild(QStringLiteral(= "mainlayout")); QVERIFY(vboxlayout); QCOMPARE(vboxlayout->margin(), 0); diff --git a/kmail/editorsendcheckplugins/confirm-address/autotests/confirm= addressconfigurewidgettest.cpp b/kmail/editorsendcheckplugins/confirm-addre= ss/autotests/confirmaddressconfigurewidgettest.cpp index e24c28b..a8b7a52 100644 --- a/kmail/editorsendcheckplugins/confirm-address/autotests/confirmaddress= configurewidgettest.cpp +++ b/kmail/editorsendcheckplugins/confirm-address/autotests/confirmaddress= configurewidgettest.cpp @@ -38,7 +38,7 @@ ConfirmAddressConfigureWidgetTest::~ConfirmAddressConfigu= reWidgetTest() = void ConfirmAddressConfigureWidgetTest::shouldHaveDefaultValue() { - ConfirmAddressConfigureWidget w; + ConfirmAddressConfigureWidget w(Q_NULLPTR); = QVBoxLayout *vboxlayout =3D w.findChild(QStringLiteral(= "mainlayout")); QVERIFY(vboxlayout); diff --git a/kmail/editorsendcheckplugins/confirm-address/autotests/confirm= addressplugintest.cpp b/kmail/editorsendcheckplugins/confirm-address/autote= sts/confirmaddressplugintest.cpp index f2f009d..8540176 100644 --- a/kmail/editorsendcheckplugins/confirm-address/autotests/confirmaddress= plugintest.cpp +++ b/kmail/editorsendcheckplugins/confirm-address/autotests/confirmaddress= plugintest.cpp @@ -36,7 +36,7 @@ void ConfirmAddressPluginTest::shouldHaveDefaultValue() { ConfirmAddressPlugin plugin; QVERIFY(plugin.hasConfigureSupport()); - QVERIFY(plugin.createConfigureWidget(new QWidget()).configureWidget); + QVERIFY(plugin.createConfigureWidget(Q_NULLPTR, new QWidget()).configu= reWidget); QVERIFY(plugin.createInterface(this)); } = diff --git a/kmail/editorsendcheckplugins/confirm-address/confirmaddresscon= figuretab.cpp b/kmail/editorsendcheckplugins/confirm-address/confirmaddress= configuretab.cpp index 523f703..2e69df9 100644 --- a/kmail/editorsendcheckplugins/confirm-address/confirmaddressconfiguret= ab.cpp +++ b/kmail/editorsendcheckplugins/confirm-address/confirmaddressconfiguret= ab.cpp @@ -24,7 +24,7 @@ #include #include = -ConfirmAddressConfigureTab::ConfirmAddressConfigureTab(QWidget *parent) +ConfirmAddressConfigureTab::ConfirmAddressConfigureTab(KIdentityManagement= ::IdentityManager *identityManagement, QWidget *parent) : QWidget(parent) { QVBoxLayout *mainLayout =3D new QVBoxLayout(this); @@ -35,7 +35,7 @@ ConfirmAddressConfigureTab::ConfirmAddressConfigureTab(QW= idget *parent) mTabWidget->setObjectName(QStringLiteral("tabwidget")); mainLayout->addWidget(mTabWidget); = - initTab(); + initTab(identityManagement); } = ConfirmAddressConfigureTab::~ConfirmAddressConfigureTab() @@ -64,15 +64,24 @@ void ConfirmAddressConfigureTab::resetSettings() } } = -void ConfirmAddressConfigureTab::initTab() +void ConfirmAddressConfigureTab::initTab(KIdentityManagement::IdentityMana= ger *identityManager) { - KIdentityManagement::IdentityManager manager(true); - KIdentityManagement::IdentityManager::ConstIterator end =3D manager.en= d(); - for (KIdentityManagement::IdentityManager::ConstIterator it =3D manage= r.begin(); it !=3D end; ++it) { + bool needToDeleteIdentity =3D false; + if (!identityManager) { + needToDeleteIdentity =3D true; + identityManager =3D new KIdentityManagement::IdentityManager(true); + } + KIdentityManagement::IdentityManager::ConstIterator end =3D identityMa= nager->end(); + for (KIdentityManagement::IdentityManager::ConstIterator it =3D identi= tyManager->begin(); it !=3D end; ++it) { ConfirmAddressConfigureTabWidget *w =3D new ConfirmAddressConfigur= eTabWidget(this); connect(w, &ConfirmAddressConfigureTabWidget::configureChanged, th= is, &ConfirmAddressConfigureTab::configureChanged); mTabWidget->addTab(w, (*it).identityName()); w->setIdentity((*it).uoid()); mListTabWidget.append(w); } + if (needToDeleteIdentity) { + delete identityManager; + identityManager =3D Q_NULLPTR; + } } + diff --git a/kmail/editorsendcheckplugins/confirm-address/confirmaddresscon= figuretab.h b/kmail/editorsendcheckplugins/confirm-address/confirmaddressco= nfiguretab.h index 7b9cb1a..a4d1581 100644 --- a/kmail/editorsendcheckplugins/confirm-address/confirmaddressconfiguret= ab.h +++ b/kmail/editorsendcheckplugins/confirm-address/confirmaddressconfiguret= ab.h @@ -24,11 +24,16 @@ class QTabWidget; class KConfigGroup; class ConfirmAddressConfigureTabWidget; +namespace KIdentityManagement +{ +class IdentityManager; +} + class ConfirmAddressConfigureTab : public QWidget { Q_OBJECT public: - explicit ConfirmAddressConfigureTab(QWidget *parent =3D Q_NULLPTR); + explicit ConfirmAddressConfigureTab(KIdentityManagement::IdentityManag= er *identityManagement, QWidget *parent =3D Q_NULLPTR); ~ConfirmAddressConfigureTab(); = void loadSettings(const KConfigGroup &grp); @@ -39,7 +44,7 @@ Q_SIGNALS: void configureChanged(); = private: - void initTab(); + void initTab(KIdentityManagement::IdentityManager *identityManager); QTabWidget *mTabWidget; QList mListTabWidget; }; diff --git a/kmail/editorsendcheckplugins/confirm-address/confirmaddresscon= figurewidget.cpp b/kmail/editorsendcheckplugins/confirm-address/confirmaddr= essconfigurewidget.cpp index a17ba2b..2b6d8be 100644 --- a/kmail/editorsendcheckplugins/confirm-address/confirmaddressconfigurew= idget.cpp +++ b/kmail/editorsendcheckplugins/confirm-address/confirmaddressconfigurew= idget.cpp @@ -26,8 +26,8 @@ #include #include = -ConfirmAddressConfigureWidget::ConfirmAddressConfigureWidget(QWidget *pare= nt) - : MessageComposer::PluginEditorCheckBeforeSendConfigureWidget(parent) +ConfirmAddressConfigureWidget::ConfirmAddressConfigureWidget(KIdentityMana= gement::IdentityManager *identityManager, QWidget *parent) + : MessageComposer::PluginEditorCheckBeforeSendConfigureWidget(identity= Manager, parent) { QVBoxLayout *vboxlayout =3D new QVBoxLayout; vboxlayout->setObjectName(QStringLiteral("mainlayout")); @@ -37,7 +37,7 @@ ConfirmAddressConfigureWidget::ConfirmAddressConfigureWid= get(QWidget *parent) vboxlayout->addWidget(mEnable); connect(mEnable, &QCheckBox::clicked, this, &ConfirmAddressConfigureWi= dget::slotEnableChanged); = - mConfirmAddressConfigureTab =3D new ConfirmAddressConfigureTab(this); + mConfirmAddressConfigureTab =3D new ConfirmAddressConfigureTab(identit= yManagement(), this); mConfirmAddressConfigureTab->setObjectName(QStringLiteral("confirmaddr= esstab")); connect(mConfirmAddressConfigureTab, &ConfirmAddressConfigureTab::conf= igureChanged, this, &ConfirmAddressConfigureWidget::configureChanged); vboxlayout->addWidget(mConfirmAddressConfigureTab); diff --git a/kmail/editorsendcheckplugins/confirm-address/confirmaddresscon= figurewidget.h b/kmail/editorsendcheckplugins/confirm-address/confirmaddres= sconfigurewidget.h index 3df521a..d22dd16 100644 --- a/kmail/editorsendcheckplugins/confirm-address/confirmaddressconfigurew= idget.h +++ b/kmail/editorsendcheckplugins/confirm-address/confirmaddressconfigurew= idget.h @@ -28,7 +28,7 @@ class ConfirmAddressConfigureWidget : public MessageCompo= ser::PluginEditorCheckB { Q_OBJECT public: - explicit ConfirmAddressConfigureWidget(QWidget *parent =3D Q_NULLPTR); + explicit ConfirmAddressConfigureWidget(KIdentityManagement::IdentityMa= nager *identityManager, QWidget *parent =3D Q_NULLPTR); ~ConfirmAddressConfigureWidget(); = void loadSettings() Q_DECL_OVERRIDE; diff --git a/kmail/editorsendcheckplugins/confirm-address/confirmaddressplu= gin.cpp b/kmail/editorsendcheckplugins/confirm-address/confirmaddressplugin= .cpp index 64dedb7..90cee0b 100644 --- a/kmail/editorsendcheckplugins/confirm-address/confirmaddressplugin.cpp +++ b/kmail/editorsendcheckplugins/confirm-address/confirmaddressplugin.cpp @@ -50,9 +50,9 @@ bool ConfirmAddressPlugin::hasConfigureSupport() const return true; } = -MessageComposer::PluginEditorCheckBeforeSendConfigureWidgetSetting Confirm= AddressPlugin::createConfigureWidget(QWidget *parent) const +MessageComposer::PluginEditorCheckBeforeSendConfigureWidgetSetting Confirm= AddressPlugin::createConfigureWidget(KIdentityManagement::IdentityManager *= identityManager, QWidget *parent) const { - ConfirmAddressConfigureWidget *w =3D new ConfirmAddressConfigureWidget= (parent); + ConfirmAddressConfigureWidget *w =3D new ConfirmAddressConfigureWidget= (identityManager, parent); MessageComposer::PluginEditorCheckBeforeSendConfigureWidgetSetting set= tings(w, i18n("Confirm Addresses")); return settings; } diff --git a/kmail/editorsendcheckplugins/confirm-address/confirmaddressplu= gin.h b/kmail/editorsendcheckplugins/confirm-address/confirmaddressplugin.h index 45d8e41..2a27b7a 100644 --- a/kmail/editorsendcheckplugins/confirm-address/confirmaddressplugin.h +++ b/kmail/editorsendcheckplugins/confirm-address/confirmaddressplugin.h @@ -33,7 +33,7 @@ public: MessageComposer::PluginEditorCheckBeforeSendInterface *createInterface= (QObject *parent) Q_DECL_OVERRIDE; bool hasConfigureSupport() const Q_DECL_OVERRIDE; = - MessageComposer::PluginEditorCheckBeforeSendConfigureWidgetSetting cre= ateConfigureWidget(QWidget *parent) const Q_DECL_OVERRIDE; + MessageComposer::PluginEditorCheckBeforeSendConfigureWidgetSetting cre= ateConfigureWidget(KIdentityManagement::IdentityManager *identityManager, Q= Widget *parent) const Q_DECL_OVERRIDE; }; = #endif // CONFIRMADDRESSPLUGIN_H