[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:31 UTC 2016


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

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

    Now actions are enabled according to user + contact capabilities
---
 src/contactWrapper.cpp                       | 28 ++++++++++++++++++++++++++++
 src/contactWrapper.h                         | 12 ++++++++++++
 src/declarative/contents/ui/Contact.qml      |  1 +
 src/declarative/contents/ui/DropDownMenu.qml |  8 ++++++++
 4 files changed, 49 insertions(+)

diff --git a/src/contactWrapper.cpp b/src/contactWrapper.cpp
index 9f3d70b..f3dbecf 100644
--- a/src/contactWrapper.cpp
+++ b/src/contactWrapper.cpp
@@ -23,6 +23,7 @@
 #include <KUrl>
 
 #include <TelepathyQt4/AvatarData>
+#include <TelepathyQt4/ContactCapabilities>
 #include <TelepathyQt4/PendingChannelRequest>
 #include <TelepathyQt4/Presence>
 
@@ -53,6 +54,33 @@ QString ContactWrapper::avatar() const
     }
 }
 
+bool ContactWrapper::canSendFile() const
+{
+    if (m_contact && m_account) {
+        return (m_contact->capabilities().fileTransfers() && m_account->capabilities().fileTransfers());
+    } else {
+        return false;
+    }
+}
+
+bool ContactWrapper::canStartAudioCall() const
+{
+    if (m_contact && m_account) {
+        return (m_contact->capabilities().streamedMediaAudioCalls() && m_account->capabilities().streamedMediaAudioCalls());
+    } else {
+        return false;
+    }
+}
+
+bool ContactWrapper::canStartVideo() const
+{
+    if (m_contact && m_account) {
+        return (m_contact->capabilities().streamedMediaVideoCalls() && m_account->capabilities().streamedMediaVideoCalls());
+    } else {
+        return false;
+    }
+}
+
 Tp::ContactPtr ContactWrapper::contact() const
 {
     return m_contact;
diff --git a/src/contactWrapper.h b/src/contactWrapper.h
index 0d6b712..08cd867 100644
--- a/src/contactWrapper.h
+++ b/src/contactWrapper.h
@@ -33,12 +33,24 @@ public:
     virtual ~ContactWrapper();
 
     Q_PROPERTY(QString avatar READ avatar);
+    Q_PROPERTY(bool canSendFile READ canSendFile);
+    Q_PROPERTY(bool canStartAudioCall READ canStartAudioCall);
+    Q_PROPERTY(bool canStartVideo READ canStartVideo);
     Q_PROPERTY(QString displayName READ displayName);
     Q_PROPERTY(QString presenceStatus READ presenceStatus);
 
     /** returns the avatar location for the contact */
     QString avatar() const;
 
+    /** returns wether the contact can send files */
+    bool canSendFile() const;
+
+    /** returns wether the contact can start/recieve audio calls */
+    bool canStartAudioCall() const;
+
+    /** returns wether the contact can start/recieve video */
+    bool canStartVideo() const;
+
     /** returns current contact being rappresented */
     Tp::ContactPtr contact() const;
 
diff --git a/src/declarative/contents/ui/Contact.qml b/src/declarative/contents/ui/Contact.qml
index ea2bfda..937cc84 100644
--- a/src/declarative/contents/ui/Contact.qml
+++ b/src/declarative/contents/ui/Contact.qml
@@ -62,5 +62,6 @@ Item {
 
         // update avatar
         avatar.update();
+        dropDownMenu.update();
     }
 }
diff --git a/src/declarative/contents/ui/DropDownMenu.qml b/src/declarative/contents/ui/DropDownMenu.qml
index 04af5c5..8dc7c99 100644
--- a/src/declarative/contents/ui/DropDownMenu.qml
+++ b/src/declarative/contents/ui/DropDownMenu.qml
@@ -119,4 +119,12 @@ Item {
             state = "hidden";
         }
     }
+
+    function update()
+    {
+        // update icon "enables"
+        callButton.enabled = TelepathyContact.canStartAudioCall;
+        videoButton.enabled = TelepathyContact.canStartVideo;
+        fileTransferButton.enabled = TelepathyContact.canSendFile;
+    }
 }

-- 
ktp-contact-applet packaging



More information about the pkg-kde-commits mailing list