aboutsummaryrefslogtreecommitdiffstats
path: root/libempathy-gtk/empathy-new-message-dialog.c
diff options
context:
space:
mode:
authorVitaly Minko <vitaly.minko@gmail.com>2010-11-12 22:47:51 +0800
committerVitaly Minko <vitaly.minko@gmail.com>2010-11-12 22:47:51 +0800
commit875bf697d54f1c4ca98478ded849bc733828f758 (patch)
treee623330e91d22c72a3293baabde6d2cfe4b5450a /libempathy-gtk/empathy-new-message-dialog.c
parent18d649cbfd8eda7678957a3d2a76b9bb8681a981 (diff)
downloadgsoc2013-empathy-875bf697d54f1c4ca98478ded849bc733828f758.tar
gsoc2013-empathy-875bf697d54f1c4ca98478ded849bc733828f758.tar.gz
gsoc2013-empathy-875bf697d54f1c4ca98478ded849bc733828f758.tar.bz2
gsoc2013-empathy-875bf697d54f1c4ca98478ded849bc733828f758.tar.lz
gsoc2013-empathy-875bf697d54f1c4ca98478ded849bc733828f758.tar.xz
gsoc2013-empathy-875bf697d54f1c4ca98478ded849bc733828f758.tar.zst
gsoc2013-empathy-875bf697d54f1c4ca98478ded849bc733828f758.zip
Make AccountChooser-related code simpler and clearer (re #633481).
Diffstat (limited to 'libempathy-gtk/empathy-new-message-dialog.c')
-rw-r--r--libempathy-gtk/empathy-new-message-dialog.c33
1 files changed, 5 insertions, 28 deletions
diff --git a/libempathy-gtk/empathy-new-message-dialog.c b/libempathy-gtk/empathy-new-message-dialog.c
index 8249b8693..4747dfbb9 100644
--- a/libempathy-gtk/empathy-new-message-dialog.c
+++ b/libempathy-gtk/empathy-new-message-dialog.c
@@ -90,40 +90,17 @@ conn_prepared_cb (GObject *conn,
FilterCallbackData *data = user_data;
GError *myerr = NULL;
TpCapabilities *caps;
- GPtrArray *classes;
- guint i;
if (!tp_proxy_prepare_finish (conn, result, &myerr))
- goto out;
-
- caps = tp_connection_get_capabilities (TP_CONNECTION (conn));
- classes = tp_capabilities_get_channel_classes (caps);
-
- for (i = 0; i < classes->len; i++)
{
- GHashTable *fixed;
- GStrv allowed;
- const gchar *chan_type;
-
- tp_value_array_unpack (g_ptr_array_index (classes, i), 2,
- &fixed, &allowed);
-
- chan_type = tp_asv_get_string (fixed, TP_PROP_CHANNEL_CHANNEL_TYPE);
-
- if (tp_strdiff (chan_type, TP_IFACE_CHANNEL_TYPE_TEXT))
- continue;
-
- if (tp_asv_get_uint32 (fixed, TP_PROP_CHANNEL_TARGET_HANDLE_TYPE, NULL) !=
- TP_HANDLE_TYPE_CONTACT)
- continue;
-
- data->callback (TRUE, data->user_data);
+ data->callback (FALSE, data->user_data);
g_slice_free (FilterCallbackData, data);
- return;
}
-out:
- data->callback (FALSE, data->user_data);
+ caps = tp_connection_get_capabilities (TP_CONNECTION (conn));
+ data->callback (tp_capabilities_supports_text_chats (caps),
+ data->user_data);
+
g_slice_free (FilterCallbackData, data);
}