diff options
author | Alban Crequy <alban.crequy@collabora.co.uk> | 2008-11-24 18:51:18 +0000 |
---|---|---|
committer | Alban Crequy <alban.crequy@collabora.co.uk> | 2008-11-24 18:51:18 +0000 |
commit | 81a1b005275d300e1c8ae124b5298616d59723ad (patch) | |
tree | 7cdc4c277e9f9ba2f9d5cbe2f32936672dbbca28 /src/tube-stream.c | |
parent | 4aea6ac8559caa362948d4fa93ee0caf0cbd96dc (diff) | |
download | telepathy-salut-81a1b005275d300e1c8ae124b5298616d59723ad.tar.gz |
SalutTubeIface: don't make the "state" property writeable, add a proper function salut_tube_iface_accepted() instead
Diffstat (limited to 'src/tube-stream.c')
-rw-r--r-- | src/tube-stream.c | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/src/tube-stream.c b/src/tube-stream.c index 62dd637e..8a6e4a94 100644 --- a/src/tube-stream.c +++ b/src/tube-stream.c @@ -1040,11 +1040,6 @@ salut_tube_stream_set_property (GObject *object, case PROP_PARAMETERS: priv->parameters = g_value_get_boxed (value); break; - case PROP_STATE: - priv->state = g_value_get_uint (value); - if (priv->state == TP_TUBE_STATE_OPEN) - g_signal_emit (G_OBJECT (self), signals[OPENED], 0); - break; case PROP_ADDRESS_TYPE: g_assert (g_value_get_uint (value) == TP_SOCKET_ADDRESS_TYPE_UNIX || g_value_get_uint (value) == TP_SOCKET_ADDRESS_TYPE_IPV4 || @@ -1499,6 +1494,24 @@ salut_tube_stream_accept (SalutTubeIface *tube, } /** + * salut_tube_stream_accepted + * + * Implements salut_tube_iface_accepted on SalutTubeIface + */ +static void +salut_tube_stream_accepted (SalutTubeIface *tube) +{ + SalutTubeStream *self = SALUT_TUBE_STREAM (tube); + SalutTubeStreamPrivate *priv = SALUT_TUBE_STREAM_GET_PRIVATE (self); + + if (priv->state == TP_TUBE_STATE_OPEN) + return; + + priv->state = TP_TUBE_STATE_OPEN; + g_signal_emit (G_OBJECT (self), signals[OPENED], 0); +} + +/** * salut_tube_stream_offer_needed * * Implements salut_tube_iface_offer_needed on SalutTubeIface @@ -1911,6 +1924,7 @@ tube_iface_init (gpointer g_iface, SalutTubeIfaceClass *klass = (SalutTubeIfaceClass *) g_iface; klass->accept = salut_tube_stream_accept; + klass->accepted = salut_tube_stream_accepted; klass->offer_needed = salut_tube_stream_offer_needed; klass->listen = salut_tube_stream_listen; klass->close = salut_tube_stream_close; |