[pim/kdepim-addons] kmail/checkbeforedeletemailplugins/confirmbeforedeleting: Add to actioncollection + fix mem leak
Laurent Montel <[email protected]>
| Newsgroups | gmane.comp.kde.cvs |
|---|---|
| Message-ID | <[email protected]> |
Git commit dea5e4f6dd1a4829d605644b8097a5ecf6df13f1 by Laurent Montel.
Committed on 15/08/2026 at 13:15.
Pushed by mlaurent into branch 'master'.
Add to actioncollection + fix mem leak
M +6 -4 kmail/checkbeforedeletemailplugins/confirmbeforedeleting/confirmbeforedeletinginterface.cpp
https://invent.kde.org/pim/kdepim-addons/-/commit/dea5e4f6dd1a4829d605644b8097a5ecf6df13f1
diff --git a/kmail/checkbeforedeletemailplugins/confirmbeforedeleting/confirmbeforedeletinginterface.cpp b/kmail/checkbeforedeletemailplugins/confirmbeforedeleting/confirmbeforedeletinginterface.cpp
index 8513c3d7b..ca67e0501 100644
--- a/kmail/checkbeforedeletemailplugins/confirmbeforedeleting/confirmbeforedeletinginterface.cpp
+++ b/kmail/checkbeforedeletemailplugins/confirmbeforedeleting/confirmbeforedeletinginterface.cpp
@@ -9,6 +9,7 @@ using namespace Qt::Literals::StringLiterals;
#include "confirmbeforedeletingmanager.h"
#include "confirmbeforedeletingmessageboxdialog.h"
#include "confirmbeforedeletingplugin_debug.h"
+#include <KActionCollection>
#include <KLocalizedString>
#include <QAction>
#include <QDialogButtonBox>
@@ -35,6 +36,8 @@ void ConfirmBeforeDeletingInterface::createActions(KActionCollection *ac)
auto menu = new QMenu;
auto act = new QAction(QIcon::fromTheme(u"settings-configure"_s), i18n("Configure"), menu);
connect(act, &QAction::triggered, this, &ConfirmBeforeDeletingInterface::slotConfigure);
+ ac->addAction(QStringLiteral("confirm_before_deleting_configure"), act);
+
menu->addAction(act);
mainMenu->setMenu(menu);
mAction << mainMenu;
@@ -76,19 +79,18 @@ Akonadi::Item::List ConfirmBeforeDeletingInterface::exec(const Akonadi::Item::Li
if (dlg->useSameResult()) {
ruleDelete.append(r);
}
- delete dlg;
} else if (button == QDialogButtonBox::StandardButton::No) {
if (dlg->useSameResult()) {
ruleNotDelete.append(r);
}
- delete dlg;
} else if (button == QDialogButtonBox::StandardButton::Cancel) {
lst.clear();
- delete dlg;
break;
} else {
- qCWarning(KMAIL_CONFIRMBEFOREDELETING_PLUGIN_LOG) << " StandardButton is invalid " << button << " .It's a bug!";
+ lst.clear();
+ break;
}
+ delete dlg;
} else {
lst << item;
}