[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