[SCM] ktp-kded-integration-module packaging branch, master, updated. debian/15.12.1-2-382-gbd961c2

Maximiliano Curia maxy at moszumanska.debian.org
Sat May 28 00:13:09 UTC 2016


Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-kded-module.git;a=commitdiff;h=91e2841

The following commit has been merged in the master branch:
commit 91e2841d7557e272cffbf828ab5491d2ca816fc8
Author: Martin Klapetek <martin.klapetek at gmail.com>
Date:   Mon Nov 14 18:38:40 2011 +0100

    Improvements
---
 contact-request-handler.cpp | 83 +++++++++++++++++++++++++++------------------
 contact-request-handler.h   |  1 +
 2 files changed, 51 insertions(+), 33 deletions(-)

diff --git a/contact-request-handler.cpp b/contact-request-handler.cpp
index 9959379..906bc75 100644
--- a/contact-request-handler.cpp
+++ b/contact-request-handler.cpp
@@ -149,35 +149,7 @@ void ContactRequestHandler::onPresencePublicationRequested(const Tp::Contacts& c
 
             m_pendingContacts.insert(contact->id(), contact);
 
-            m_notifierItem = getNotifierItem();
-
-            KMenu *contactMenu = new KMenu(m_notifierMenu);
-            contactMenu->setTitle(i18n("Request from %1", contact->id()));
-            contactMenu->setObjectName(contact->id());
-
-            KAction *menuAction;
-            if (!contact->publishStateMessage().isEmpty()) {
-                contactMenu->addTitle(contact->publishStateMessage());
-            } else {
-                contactMenu->addTitle(contact->alias());
-            }
-            menuAction = new KAction(KIcon(QLatin1String("dialog-ok-apply")), i18n("Approve"), contactMenu);
-            connect(menuAction, SIGNAL(triggered(bool)),
-                    this, SLOT(onContactRequestApproved()));
-            menuAction->setData(contact->id());
-            contactMenu->addAction(menuAction);
-
-            menuAction = new KAction(KIcon(QLatin1String("dialog-close")), i18n("Deny"), contactMenu);
-            menuAction->setData(contact->id());
-
-            connect(menuAction, SIGNAL(triggered(bool)),
-                    this, SLOT(onContactRequestDenied()));
-            contactMenu->addAction(menuAction);
-
-            m_notifierMenu->addMenu(contactMenu);
-            m_notifierItem->setContextMenu(m_notifierMenu);
-
-            updateNotifierItemTooltip();
+            createMenus();
         }
 
         if (op) {
@@ -227,13 +199,15 @@ void ContactRequestHandler::onContactRequestApproved()
     if (!contactId.isEmpty()) {
         Tp::ContactPtr contact = m_pendingContacts.value(contactId);
         if (!contact.isNull()) {
-            Tp::PendingOperation *op = contact->manager()->authorizePresencePublication(QList< Tp::ContactPtr >() << contact);
+            //Tp::PendingOperation *op = contact->manager()->authorizePresencePublication(QList< Tp::ContactPtr >() << contact);
             //TODO: connect and let user know the result, find and remove the menu from statusnotifier
             //      don't forget to update the tooltip with -1
             //delete m_notifierMenu->findChild<KMenu*>(contactId);
-            if (contact->manager()->canRequestPresenceSubscription() && contact->subscriptionState() == Tp::Contact::PresenceStateNo) {
-                contact->manager()->requestPresenceSubscription(QList< Tp::ContactPtr >() << contact);
-            }
+            //if (contact->manager()->canRequestPresenceSubscription() && contact->subscriptionState() == Tp::Contact::PresenceStateNo) {
+            //    contact->manager()->requestPresenceSubscription(QList< Tp::ContactPtr >() << contact);
+            //}
+            m_pendingContacts.remove(contactId);
+            createMenus();
         }
     }
 }
@@ -253,4 +227,47 @@ QString contactId = qobject_cast<KAction*>(sender())->data().toString();
     }
 }
 
+void ContactRequestHandler::createMenus()
+{
+    m_notifierItem = getNotifierItem();
+
+    kDebug() << m_pendingContacts.keys();
+
+    m_notifierMenu->clear();
+    m_notifierItem->setContextMenu(new KMenu());
+
+    QHash<QString, Tp::ContactPtr>::const_iterator i;
+    for (i = m_pendingContacts.constBegin(); i != m_pendingContacts.constEnd(); ++i) {
+        kDebug();
+        Tp::ContactPtr contact = i.value();
+
+        KMenu *contactMenu = new KMenu(m_notifierMenu);
+        contactMenu->setTitle(i18n("Request from %1", contact->id()));
+        contactMenu->setObjectName(contact->id());
+
+        KAction *menuAction;
+        if (!contact->publishStateMessage().isEmpty()) {
+            contactMenu->addTitle(contact->publishStateMessage());
+        } else {
+            contactMenu->addTitle(contact->alias());
+        }
+        menuAction = new KAction(KIcon(QLatin1String("dialog-ok-apply")), i18n("Approve"), contactMenu);
+        connect(menuAction, SIGNAL(triggered()),
+                this, SLOT(onContactRequestApproved()));
+        menuAction->setData(contact->id());
+        contactMenu->addAction(menuAction);
+
+        menuAction = new KAction(KIcon(QLatin1String("dialog-close")), i18n("Deny"), contactMenu);
+        menuAction->setData(contact->id());
+
+        connect(menuAction, SIGNAL(triggered()),
+                this, SLOT(onContactRequestDenied()));
+        contactMenu->addAction(menuAction);
+
+        m_notifierMenu->addMenu(contactMenu);
+    }
+    m_notifierItem->setContextMenu(m_notifierMenu);
+    updateNotifierItemTooltip();
+}
+
 #include "contact-request-handler.moc"
\ No newline at end of file
diff --git a/contact-request-handler.h b/contact-request-handler.h
index 41a358e..b863c49 100644
--- a/contact-request-handler.h
+++ b/contact-request-handler.h
@@ -46,6 +46,7 @@ public Q_SLOTS:
     void onAccountsPresenceStatusFiltered();
     void onPresencePublicationRequested(const Tp::Contacts& contacts);
     void onConnectionChanged(const Tp::ConnectionPtr& connection);
+    void createMenus();
 
     void onContactRequestApproved();
     void onContactRequestDenied();

-- 
ktp-kded-integration-module packaging



More information about the pkg-kde-commits mailing list