[SCM] ktp-contact-applet packaging branch, master, updated. debian/15.12.1-1-966-gde83ac5

Maximiliano Curia maxy at moszumanska.debian.org
Sat May 28 00:11:29 UTC 2016


Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-desktop-applets.git;a=commitdiff;h=e1485be

The following commit has been merged in the master branch:
commit e1485beb1043d11062a25adcfd69da40903383b5
Author: Francesco Nwokeka <francesco.nwokeka at gmail.com>
Date:   Sat Aug 20 12:32:43 2011 +0200

    Connected the "startTextChat" signal.
    
    Plasmoid now starts chat with selected contact
---
 src/contactWrapper.cpp | 31 ++++++++++++++++++++++++++++++-
 src/contactWrapper.h   |  3 +++
 2 files changed, 33 insertions(+), 1 deletion(-)

diff --git a/src/contactWrapper.cpp b/src/contactWrapper.cpp
index bf513c0..0adeb63 100644
--- a/src/contactWrapper.cpp
+++ b/src/contactWrapper.cpp
@@ -20,8 +20,11 @@
 #include "contactWrapper.h"
 
 #include <TelepathyQt4/AvatarData>
+#include <TelepathyQt4/PendingChannelRequest>
 #include <TelepathyQt4/Presence>
 
+#define PREFERRED_TEXTCHAT_HANDLER "org.freedesktop.Telepathy.Client.KDE.TextUi"
+
 ContactWrapper::ContactWrapper(QObject* parent)
     : QObject(parent)
     , m_contact(0)
@@ -61,6 +64,22 @@ QString ContactWrapper::displayName() const
     }
 }
 
+void ContactWrapper::genericOperationFinished(Tp::PendingOperation* op)
+{
+    /// TODO send notification on error. Why doesn't the static method work??
+    if (op->isError()) {
+        QString errorMsg(op->errorName() + ": " + op->errorMessage());
+
+//         KNotification::event("telepathyError", errorMsg);
+//
+//         KNotification *notification = new KNotification("telepathyError", );
+//         KAboutData aboutData("ktelepathy",0,KLocalizedString(),0);
+//         notification->setComponentData(KComponentData(aboutData));
+//         notification->setText(errorMsg);
+//         notification->sendEvent();
+    }
+}
+
 QString ContactWrapper::presenceStatus() const
 {
     if (m_contact) {
@@ -89,6 +108,14 @@ void ContactWrapper::startAudioCall()
 void ContactWrapper::startTextChat()
 {
     qDebug("ContactWrapper::startTextChat");
+    if (!m_account) {
+        return;
+    }
+
+    Tp::PendingChannelRequest* channelRequest = m_account->ensureTextChat(m_contact,
+                                                                        QDateTime::currentDateTime(),
+                                                                        PREFERRED_TEXTCHAT_HANDLER);
+    connect(channelRequest, SIGNAL(finished(Tp::PendingOperation*)), this, SLOT(genericOperationFinished(Tp::PendingOperation*)));
 }
 
 void ContactWrapper::setContact(const Tp::ContactPtr& newContact, const Tp::AccountPtr &relatedAccount)
@@ -110,6 +137,8 @@ void ContactWrapper::setContact(const Tp::ContactPtr& newContact, const Tp::Acco
 
 void ContactWrapper::undoConnects()
 {
-    disconnect(m_contact.data(), 0, 0, 0);
+    if (m_contact) {
+        disconnect(m_contact.data(), 0, 0, 0);
+    }
 }
 
diff --git a/src/contactWrapper.h b/src/contactWrapper.h
index 6474555..6964809 100644
--- a/src/contactWrapper.h
+++ b/src/contactWrapper.h
@@ -64,6 +64,9 @@ signals:
     void newContactSet();
     void presenceChanged();
 
+private slots:
+    void genericOperationFinished(Tp::PendingOperation *op);
+
 private:
     void setupConnects();
     void undoConnects();

-- 
ktp-contact-applet packaging



More information about the pkg-kde-commits mailing list