comparison libpurple/conversation.c @ 23406:3c1f1bed5be2

merge of '57be04f07f9fdc005b620053ae4f09dd1e27ebb3' and '582755b8228024381c2a9e110de35f0aaedd5dc1'
author Evan Schoenberg <evan.s@dreskin.net>
date Wed, 02 Jul 2008 00:06:25 +0000
parents b2f91d7d3427
children 1c6918e48104 81ebe4fac9ce
comparison
equal deleted inserted replaced
22892:c9bc2d0215ed 23406:3c1f1bed5be2
96 PurpleAccount *account; 96 PurpleAccount *account;
97 PurpleConnection *gc; 97 PurpleConnection *gc;
98 char *displayed = NULL, *sent = NULL; 98 char *displayed = NULL, *sent = NULL;
99 int err = 0; 99 int err = 0;
100 100
101 if (strlen(message) == 0) 101 if (*message == '\0')
102 return; 102 return;
103 103
104 account = purple_conversation_get_account(conv); 104 account = purple_conversation_get_account(conv);
105 gc = purple_conversation_get_gc(conv); 105 gc = purple_conversation_get_gc(conv);
106 106
811 const gchar *name2; 811 const gchar *name2;
812 GList *cnv; 812 GList *cnv;
813 813
814 g_return_val_if_fail(name != NULL, NULL); 814 g_return_val_if_fail(name != NULL, NULL);
815 815
816 switch (type) {
817 case PURPLE_CONV_TYPE_IM:
818 cnv = purple_get_ims();
819 break;
820 case PURPLE_CONV_TYPE_CHAT:
821 cnv = purple_get_chats();
822 break;
823 case PURPLE_CONV_TYPE_ANY:
824 cnv = purple_get_conversations();
825 break;
826 default:
827 g_return_val_if_reached(NULL);
828 }
829
816 name1 = g_strdup(purple_normalize(account, name)); 830 name1 = g_strdup(purple_normalize(account, name));
817 831
818 for (cnv = purple_get_conversations(); cnv != NULL; cnv = cnv->next) { 832 for (; cnv != NULL; cnv = cnv->next) {
819 c = (PurpleConversation *)cnv->data; 833 c = (PurpleConversation *)cnv->data;
820 name2 = purple_normalize(account, purple_conversation_get_name(c)); 834 name2 = purple_normalize(account, purple_conversation_get_name(c));
821 835
822 if (((type == PURPLE_CONV_TYPE_ANY) || (type == purple_conversation_get_type(c))) && 836 if ((account == purple_conversation_get_account(c)) &&
823 (account == purple_conversation_get_account(c)) &&
824 !purple_utf8_strcasecmp(name1, name2)) { 837 !purple_utf8_strcasecmp(name1, name2)) {
825 838
826 break; 839 break;
827 } 840 }
828 841
2206 purple_value_new(PURPLE_TYPE_STRING), 2219 purple_value_new(PURPLE_TYPE_STRING),
2207 purple_value_new(PURPLE_TYPE_SUBTYPE, 2220 purple_value_new(PURPLE_TYPE_SUBTYPE,
2208 PURPLE_SUBTYPE_CONVERSATION), 2221 PURPLE_SUBTYPE_CONVERSATION),
2209 purple_value_new(PURPLE_TYPE_UINT)); 2222 purple_value_new(PURPLE_TYPE_UINT));
2210 2223
2224 purple_signal_register(handle, "blocked-im-msg",
2225 purple_marshal_VOID__POINTER_POINTER_POINTER_UINT_UINT,
2226 NULL, 5,
2227 purple_value_new(PURPLE_TYPE_SUBTYPE,
2228 PURPLE_SUBTYPE_ACCOUNT),
2229 purple_value_new(PURPLE_TYPE_STRING),
2230 purple_value_new(PURPLE_TYPE_STRING),
2231 purple_value_new(PURPLE_TYPE_UINT),
2232 purple_value_new(PURPLE_TYPE_UINT));
2233
2211 purple_signal_register(handle, "writing-chat-msg", 2234 purple_signal_register(handle, "writing-chat-msg",
2212 purple_marshal_BOOLEAN__POINTER_POINTER_POINTER_POINTER_UINT, 2235 purple_marshal_BOOLEAN__POINTER_POINTER_POINTER_POINTER_UINT,
2213 purple_value_new(PURPLE_TYPE_BOOLEAN), 5, 2236 purple_value_new(PURPLE_TYPE_BOOLEAN), 5,
2214 purple_value_new(PURPLE_TYPE_SUBTYPE, 2237 purple_value_new(PURPLE_TYPE_SUBTYPE,
2215 PURPLE_SUBTYPE_ACCOUNT), 2238 PURPLE_SUBTYPE_ACCOUNT),
2361 purple_value_new(PURPLE_TYPE_STRING), 2384 purple_value_new(PURPLE_TYPE_STRING),
2362 purple_value_new(PURPLE_TYPE_STRING), 2385 purple_value_new(PURPLE_TYPE_STRING),
2363 purple_value_new(PURPLE_TYPE_STRING), 2386 purple_value_new(PURPLE_TYPE_STRING),
2364 purple_value_new(PURPLE_TYPE_POINTER)); 2387 purple_value_new(PURPLE_TYPE_POINTER));
2365 2388
2389 purple_signal_register(handle, "chat-invite-blocked",
2390 purple_marshal_VOID__POINTER_POINTER_POINTER_POINTER_POINTER,
2391 NULL, 5,
2392 purple_value_new(PURPLE_TYPE_SUBTYPE,
2393 PURPLE_SUBTYPE_ACCOUNT),
2394 purple_value_new(PURPLE_TYPE_STRING),
2395 purple_value_new(PURPLE_TYPE_STRING),
2396 purple_value_new(PURPLE_TYPE_STRING),
2397 purple_value_new(PURPLE_TYPE_BOXED, "GHashTable *"));
2398
2366 purple_signal_register(handle, "chat-joined", 2399 purple_signal_register(handle, "chat-joined",
2367 purple_marshal_VOID__POINTER, NULL, 1, 2400 purple_marshal_VOID__POINTER, NULL, 1,
2368 purple_value_new(PURPLE_TYPE_SUBTYPE, 2401 purple_value_new(PURPLE_TYPE_SUBTYPE,
2369 PURPLE_SUBTYPE_CONVERSATION)); 2402 PURPLE_SUBTYPE_CONVERSATION));
2403
2404 purple_signal_register(handle, "chat-join-failed",
2405 purple_marshal_VOID__POINTER_POINTER, NULL, 2,
2406 purple_value_new(PURPLE_TYPE_SUBTYPE,
2407 PURPLE_SUBTYPE_CONNECTION),
2408 purple_value_new(PURPLE_TYPE_POINTER));
2370 2409
2371 purple_signal_register(handle, "chat-left", 2410 purple_signal_register(handle, "chat-left",
2372 purple_marshal_VOID__POINTER, NULL, 1, 2411 purple_marshal_VOID__POINTER, NULL, 1,
2373 purple_value_new(PURPLE_TYPE_SUBTYPE, 2412 purple_value_new(PURPLE_TYPE_SUBTYPE,
2374 PURPLE_SUBTYPE_CONVERSATION)); 2413 PURPLE_SUBTYPE_CONVERSATION));