[pim/akonadi-calendar] src: Don't instantiate DndFactory
Allen Winter <[email protected]>
| Newsgroups | gmane.comp.kde.cvs |
|---|---|
| Message-ID | <[email protected]> |
Git commit d5bff6a8d06052dd4dd5f2f38abcde413e482c98 by Allen Winter, on behalf of Volker Krause.
Committed on 16/07/2026 at 16:08.
Pushed by vkrause into branch 'master'.
Don't instantiate DndFactory
We only use static methods from it.
M +3 -8 src/calendarclipboard.cpp
M +0 -1 src/calendarclipboard_p.h
M +2 -4 src/todomodel.cpp
https://invent.kde.org/pim/akonadi-calendar/-/commit/d5bff6a8d06052dd4dd5f2f38abcde413e482c98
diff --git a/src/calendarclipboard.cpp b/src/calendarclipboard.cpp
index a77577e9..f8ef1981 100644
--- a/src/calendarclipboard.cpp
+++ b/src/calendarclipboard.cpp
@@ -29,17 +29,12 @@ CalendarClipboardPrivate::CalendarClipboardPrivate(const Akonadi::CalendarBase::
m_changer->setGroupwareCommunication(false);
}
- m_dndfactory = new KCalUtils::DndFactory(m_calendar);
-
connect(m_changer, &IncidenceChanger::modifyFinished, this, &CalendarClipboardPrivate::slotModifyFinished);
connect(m_changer, &IncidenceChanger::deleteFinished, this, &CalendarClipboardPrivate::slotDeleteFinished);
}
-CalendarClipboardPrivate::~CalendarClipboardPrivate()
-{
- delete m_dndfactory;
-}
+CalendarClipboardPrivate::~CalendarClipboardPrivate() = default;
void CalendarClipboardPrivate::getIncidenceHierarchy(const KCalendarCore::Incidence::Ptr &incidence, QStringList &uids)
{
@@ -56,7 +51,7 @@ void CalendarClipboardPrivate::getIncidenceHierarchy(const KCalendarCore::Incide
void CalendarClipboardPrivate::cut(const KCalendarCore::Incidence::List &incidences)
{
- const bool copyResult = m_dndfactory->copyIncidences(incidences);
+ const bool copyResult = KCalUtils::DndFactory::copyIncidences(incidences);
m_pendingChangeIds.clear();
// Note: Don't use DndFactory::cutIncidences(), it doesn't use IncidenceChanger for deletion
// we would loose async error handling and redo/undo features
@@ -242,7 +237,7 @@ bool CalendarClipboard::copyIncidence(const KCalendarCore::Incidence::Ptr &incid
}
}
- return d->m_dndfactory->copyIncidences(incidencesToCopy);
+ return KCalUtils::DndFactory::copyIncidences(incidencesToCopy);
}
bool CalendarClipboard::pasteAvailable() const
diff --git a/src/calendarclipboard_p.h b/src/calendarclipboard_p.h
index 89ec6bec..ecfe5cee 100644
--- a/src/calendarclipboard_p.h
+++ b/src/calendarclipboard_p.h
@@ -63,7 +63,6 @@ public Q_SLOTS:
public:
Akonadi::CalendarBase::Ptr m_calendar;
Akonadi::IncidenceChanger *m_changer = nullptr;
- KCalUtils::DndFactory *m_dndfactory = nullptr;
bool m_abortCurrentOperation = false;
QSet<int> m_pendingChangeIds;
CalendarClipboard *const q;
diff --git a/src/todomodel.cpp b/src/todomodel.cpp
index 387b81df..d5b466b8 100644
--- a/src/todomodel.cpp
+++ b/src/todomodel.cpp
@@ -553,10 +553,8 @@ bool TodoModel::dropMimeData(const QMimeData *data, Qt::DropAction action, [[may
}
if (d->m_changer && (KCalUtils::ICalDrag::canDecode(data) || KCalUtils::VCalDrag::canDecode(data))) {
- // DndFactory only needs a valid calendar for drag event, not for drop event.
- KCalUtils::DndFactory dndFactory(KCalendarCore::Calendar::Ptr{});
- KCalendarCore::Todo::Ptr const t = dndFactory.createDropTodo(data);
- KCalendarCore::Event::Ptr const e = dndFactory.createDropEvent(data);
+ KCalendarCore::Todo::Ptr const t = KCalUtils::DndFactory::createDropTodo(data);
+ KCalendarCore::Event::Ptr const e = KCalUtils::DndFactory::createDropEvent(data);
if (t) {
// we don't want to change the created todo, but the one which is already