[SCM] ktp-contact-list packaging branch, master, updated. debian/15.12.1-2-1070-g6c56f91
Maximiliano Curia
maxy at moszumanska.debian.org
Sat May 28 00:13:44 UTC 2016
Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-contact-list.git;a=commitdiff;h=0ba536d
The following commit has been merged in the master branch:
commit 0ba536d59e9f52c7ae23d9c410df25731767cb97
Author: David Edmundson <david at davidedmundson.co.uk>
Date: Wed Aug 7 17:06:30 2013 +0100
Merge contacts on drag + drop
REVIEW: 111706
---
contact-list-widget.cpp | 24 +++++++++++++++++++++++-
1 file changed, 23 insertions(+), 1 deletion(-)
diff --git a/contact-list-widget.cpp b/contact-list-widget.cpp
index 9928117..6dfeff8 100644
--- a/contact-list-widget.cpp
+++ b/contact-list-widget.cpp
@@ -59,6 +59,11 @@
#include "contact-delegate-compact.h"
#include "contact-overlays.h"
+
+#ifdef HAVE_KPEOPLE
+#include <kpeople/personsmodel.h>
+#endif
+
ContactListWidget::ContactListWidget(QWidget *parent)
: QTreeView(parent),
d_ptr(new ContactListWidgetPrivate)
@@ -683,6 +688,11 @@ void ContactListWidget::mouseMoveEvent(QMouseEvent *event)
}
mimeData->setData("application/vnd.telepathy.contact", encodedData);
+
+ qDebug() << index.data(KTp::NepomukUriRole).toString().toLatin1();
+
+ mimeData->setData("application/vnd.kpeople.uri", index.data(KTp::NepomukUriRole).toString().toLatin1());
+
QPixmap dragIndicator = QPixmap::grabWidget(this, visualRect(index).adjusted(3,3,3,3));
QDrag *drag = new QDrag(this);
@@ -726,7 +736,19 @@ void ContactListWidget::dropEvent(QDropEvent *event)
requestFileTransferChannels(account, contact, filenames);
event->acceptProposedAction();
}
-
+ } else if (index.data(KTp::RowTypeRole).toInt() == KTp::ContactRowType && event->mimeData()->hasFormat("application/vnd.kpeople.uri")) {
+#ifdef HAVE_KPEOPLE
+ QUrl droppedUri(index.data(KTp::NepomukUriRole).toUrl());
+ QUrl draggedUri(event->mimeData()->data("application/vnd.kpeople.uri"));
+
+ KMenu menu;
+ QAction *mergeAction = menu.addAction(i18n("Merge contacts"));
+ QAction *result = menu.exec(mapToGlobal(event->pos()));
+ if (result == mergeAction) {
+ KPeople::PersonsModel::createPersonFromUris(QList<QUrl>() << droppedUri << draggedUri);
+ }
+ event->acceptProposedAction();
+#endif
} else if (event->mimeData()->hasFormat("application/vnd.telepathy.contact")) {
kDebug() << "Contact dropped";
--
ktp-contact-list packaging
More information about the pkg-kde-commits
mailing list