aboutsummaryrefslogtreecommitdiff
path: root/src/client/QXmppRosterManager.cpp
diff options
context:
space:
mode:
authorMelvin Keskin <melvo@olomono.de>2021-05-08 19:35:40 +0200
committerGitHub <noreply@github.com>2021-05-08 19:35:40 +0200
commit826ece0480385c47c72f216e35e004b276d82498 (patch)
tree0ebddddd5db2c32c567e256be1117c62a4978c49 /src/client/QXmppRosterManager.cpp
parentab2ead62e9f5241cc28801d742698ba65d4c8bd5 (diff)
downloadqxmpp-826ece0480385c47c72f216e35e004b276d82498.tar.gz
RosterManager: Add subscription request signal with full presence (#346)
This makes it possible to get the statusText of subscription requests.
Diffstat (limited to 'src/client/QXmppRosterManager.cpp')
-rw-r--r--src/client/QXmppRosterManager.cpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/client/QXmppRosterManager.cpp b/src/client/QXmppRosterManager.cpp
index 0f677929..10f98a15 100644
--- a/src/client/QXmppRosterManager.cpp
+++ b/src/client/QXmppRosterManager.cpp
@@ -4,6 +4,7 @@
* Authors:
* Manjeet Dahiya
* Jeremy Lainé
+ * Melvin Keskin
*
* Source:
* https://github.com/qxmpp-project/qxmpp
@@ -31,6 +32,23 @@
#include <QDomElement>
+///
+/// \fn QXmppRosterManager::subscriptionRequestReceived
+///
+/// This signal is emitted when a JID asks to subscribe to the user's presence.
+///
+/// The user can either accept the request by calling acceptSubscription() or refuse it
+/// by calling refuseSubscription().
+///
+/// \note If QXmppConfiguration::autoAcceptSubscriptions() is set to true, this
+/// signal will not be emitted.
+///
+/// \param subscriberBareJid bare JID that wants to subscribe to the user's presence
+/// \param presence presence stanza containing the reason / message (presence.statusText())
+///
+/// \since QXmpp 1.5
+///
+
class QXmppRosterManagerPrivate
{
public:
@@ -234,6 +252,7 @@ void QXmppRosterManager::_q_presenceReceived(const QXmppPresence &presence)
subscribe(bareJid);
} else {
emit subscriptionReceived(bareJid);
+ emit subscriptionRequestReceived(bareJid, presence);
}
break;
default: