[SCM] ktp-contact-runner packaging branch, master, updated. debian/15.12.1-2-244-g38a1f58
Maximiliano Curia
maxy at moszumanska.debian.org
Sat May 28 17:50:24 UTC 2016
Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-contact-runner.git;a=commitdiff;h=0fc731a
The following commit has been merged in the master branch:
commit 0fc731a5cddfcb31f699445fa4a2c84d16081d16
Author: Dan Vrátil <dan at progdan.cz>
Date: Sun Mar 11 22:54:06 2012 +0100
Retrieve contact information from model instead of passing QModelIndex via QueryMatch
---
contactrunner.cpp | 24 ++++++++++++++++--------
1 file changed, 16 insertions(+), 8 deletions(-)
diff --git a/contactrunner.cpp b/contactrunner.cpp
index b734052..4380930 100644
--- a/contactrunner.cpp
+++ b/contactrunner.cpp
@@ -33,6 +33,7 @@
#include <TelepathyQt/PendingReady>
#include <TelepathyQt/Types>
#include <TelepathyQt/Constants>
+#include <TelepathyQt/ContactCapabilities>
#include <KTp/Models/accounts-model-item.h>
#include <KTp/Models/contact-model-item.h>
@@ -116,24 +117,32 @@ void ContactRunner::accountManagerReady(Tp::PendingOperation* operation)
QList< QAction* > ContactRunner::actionsForMatch(const Plasma::QueryMatch& match)
{
QList< QAction* > actions;
+ /* Remove the ID prefix added by Krunner */
+ QString id = match.id().remove("KRunnerKTPContacts_");
+
+ QStringList ids = id.split(",", QString::SkipEmptyParts);
+ if (ids.count() != 2) {
+ kWarning() << "Received invalid ID" << ids;
+ return actions;
+ }
- QModelIndex index = match.data().value< QModelIndex >();
- if (!index.isValid())
+ ContactModelItem *contactItem = qobject_cast< ContactModelItem* >(m_accountsModel->contactItemForId(ids.first(), ids.at(1)));
+ if (!contactItem)
return actions;
- if (index.data(AccountsModel::TextChatCapabilityRole).toBool())
+ if (contactItem->data(AccountsModel::TextChatCapabilityRole).toBool())
actions.append(action("start-text-chat"));
- if (index.data(AccountsModel::AudioCallCapabilityRole).toBool())
+ if (contactItem->data(AccountsModel::AudioCallCapabilityRole).toBool())
actions.append(action("start-audio-call"));
- if (index.data(AccountsModel::VideoCallCapabilityRole).toBool())
+ if (contactItem->data(AccountsModel::VideoCallCapabilityRole).toBool())
actions.append(action("start-video-call"));
- if (index.data(AccountsModel::FileTransferCapabilityRole).toBool())
+ if (contactItem->data(AccountsModel::FileTransferCapabilityRole).toBool())
actions.append(action("start-file-transfer"));
- if (index.data(AccountsModel::DesktopSharingCapabilityRole).toBool())
+ if (contactItem->data(AccountsModel::DesktopSharingCapabilityRole).toBool())
actions.append(action("start-desktop-sharing"));
return actions;
@@ -252,7 +261,6 @@ void ContactRunner::match(Plasma::RunnerContext& context)
match.setSubtext(status.replace(0, 1, status.left(1).toUpper()));
match.setSelectedAction(defaultAction);
- match.setData(qVariantFromValue(contactIndex));
match.setRelevance(relevance);
context.addMatch(term, match);
--
ktp-contact-runner packaging
More information about the pkg-kde-commits
mailing list