diff options
author | Will Thompson <will.thompson@collabora.co.uk> | 2011-11-16 09:05:59 +0000 |
---|---|---|
committer | Will Thompson <will.thompson@collabora.co.uk> | 2011-11-18 10:40:59 +0000 |
commit | 79008a4927792ddda8720d70d09948951e1b8423 (patch) | |
tree | c2f7e0c50140709082377b9d14e357100b77f04f | |
parent | e34be9ed3748699425ee4c4565c6a01a65f4d6d5 (diff) |
meta-porter: emit ::sending when a child porter does
-rw-r--r-- | wocky/wocky-meta-porter.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/wocky/wocky-meta-porter.c b/wocky/wocky-meta-porter.c index 0d3516e..773023a 100644 --- a/wocky/wocky-meta-porter.c +++ b/wocky/wocky-meta-porter.c @@ -192,6 +192,10 @@ static void porter_closing_cb (WockyPorter *porter, PorterData *data); static void porter_remote_closed_cb (WockyPorter *porter, PorterData *data); static void porter_remote_error_cb (WockyPorter *porter, GQuark domain, gint code, const gchar *msg, PorterData *data); +static void porter_sending_cb ( + WockyC2SPorter *child_porter, + WockyStanza *stanza, + PorterData *data); static void disconnect_porter_signal_handlers (WockyPorter *porter, @@ -203,6 +207,8 @@ disconnect_porter_signal_handlers (WockyPorter *porter, porter_closing_cb, data); g_signal_handlers_disconnect_by_func (porter, porter_remote_error_cb, data); + g_signal_handlers_disconnect_by_func (porter, + porter_sending_cb, data); } static void @@ -243,6 +249,15 @@ porter_remote_error_cb (WockyPorter *porter, } static void +porter_sending_cb ( + WockyC2SPorter *child_porter, + WockyStanza *stanza, + PorterData *data) +{ + g_signal_emit_by_name (data->self, "sending", stanza); +} + +static void maybe_start_timeout (PorterData *data) { if (data->refcount == 0) @@ -311,6 +326,8 @@ create_porter (WockyMetaPorter *self, G_CALLBACK (porter_remote_closed_cb), data); g_signal_connect (data->porter, "remote-error", G_CALLBACK (porter_remote_error_cb), data); + g_signal_connect (data->porter, "sending", + G_CALLBACK (porter_sending_cb), data); register_porter_handlers (self, data->porter, contact); wocky_porter_start (data->porter); |