/soc/2015/jgeboski/facebook: 6e3ee8e18697: facebook: fixed missi...
James Geboski <[email protected]>
| Newsgroups | gmane.comp.gnome.gaim.cvs |
|---|---|
| Message-ID | <[email protected]> |
Changeset: 6e3ee8e186979fc8771cca86b416b58736a5474f Author: James Geboski <[email protected]> Date: 2015-07-05 18:05 -0400 Branch: facebook URL: https://hg.pidgin.im/soc/2015/jgeboski/facebook/rev/6e3ee8e18697 Description: facebook: fixed missing chat component diffstat: libpurple/protocols/facebook/facebook.c | 48 ++++++++++++++++++++++++++++++-- 1 files changed, 44 insertions(+), 4 deletions(-) diffs (72 lines): diff --git a/libpurple/protocols/facebook/facebook.c b/libpurple/protocols/facebook/facebook.c --- a/libpurple/protocols/facebook/facebook.c +++ b/libpurple/protocols/facebook/facebook.c @@ -584,6 +584,32 @@ fb_im_send_typing(PurpleConnection *gc, return 0; } +static GList * +fb_chat_info() +{ + GList *pces = NULL; + PurpleProtocolChatEntry *pce; + + pce = g_new0(PurpleProtocolChatEntry, 1); + pce->label = _("Chat _Name:"); + pce->identifier = "name"; + pce->required = TRUE; + pces = g_list_prepend(pces, pce); + + return g_list_reverse(pces); +} + +static GHashTable * +fb_chat_info_defaults(PurpleConnection *gc, const gchar *name) +{ + GHashTable *data; + + data = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free); + g_hash_table_insert(data, "name", g_strdup(name)); + + return data; +} + static void fb_chat_join(PurpleConnection *gc, GHashTable *data) { @@ -602,6 +628,17 @@ fb_chat_join(PurpleConnection *gc, GHash fb_api_thread_info(api, tid); } +static gchar * +fb_chat_get_name(GHashTable *data) +{ + const gchar *name; + + name = g_hash_table_lookup(data, "name"); + g_return_val_if_fail(name != NULL, NULL); + + return g_strdup(name); +} + static void fb_chat_invite(PurpleConnection *gc, gint id, const gchar *msg, const gchar *who) @@ -853,10 +890,13 @@ facebook_protocol_im_iface_init(PurplePr static void facebook_protocol_chat_iface_init(PurpleProtocolChatIface *iface) { - iface->join = fb_chat_join; - iface->invite = fb_chat_invite; - iface->send = fb_chat_send; - iface->set_topic = fb_chat_set_topic; + iface->info = fb_chat_info; + iface->info_defaults = fb_chat_info_defaults; + iface->join = fb_chat_join; + iface->get_name = fb_chat_get_name; + iface->invite = fb_chat_invite; + iface->send = fb_chat_send; + iface->set_topic = fb_chat_set_topic; } static void _______________________________________________ Commits mailing list [email protected] https://pidgin.im/cgi-bin/mailman/listinfo/commits