# HG changeset patch # User Mike Ruprecht # Date 1237597908 0 # Node ID 065d865e7dd11ce58d46c708373dfa3ba01eb452 # Parent 51b986bbe260e08303ce9b5917b784931e89f55e Use stream-info for reject instead of state-changed. diff -r 51b986bbe260 -r 065d865e7dd1 pidgin/gtkmedia.c --- a/pidgin/gtkmedia.c Sat Mar 21 01:03:49 2009 +0000 +++ b/pidgin/gtkmedia.c Sat Mar 21 01:11:48 2009 +0000 @@ -671,10 +671,6 @@ pidgin_media_emit_message(gtkmedia, _("The call has been terminated.")); gtk_widget_destroy(GTK_WIDGET(gtkmedia)); - - } else if (type == PURPLE_MEDIA_STATE_CHANGED_REJECTED) { - pidgin_media_emit_message(gtkmedia, - _("You have rejected the call.")); } } else if (type == PURPLE_MEDIA_STATE_CHANGED_NEW && sid != NULL && name != NULL) { @@ -690,6 +686,16 @@ } static void +pidgin_media_stream_info_cb(PurpleMedia *media, PurpleMediaInfoType type, + gchar *sid, gchar *name, PidginMedia *gtkmedia) +{ + if (type == PURPLE_MEDIA_INFO_REJECT) { + pidgin_media_emit_message(gtkmedia, + _("You have rejected the call.")); + } +} + +static void pidgin_media_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec) { PidginMedia *media; @@ -718,6 +724,8 @@ G_CALLBACK(pidgin_media_accepted_cb), media); g_signal_connect(G_OBJECT(media->priv->media), "state-changed", G_CALLBACK(pidgin_media_state_changed_cb), media); + g_signal_connect(G_OBJECT(media->priv->media), "stream-info", + G_CALLBACK(pidgin_media_stream_info_cb), media); break; } case PROP_SCREENNAME: