comparison mcabber/src/jabglue.c @ 993:0759f4c7da68

Add option 'disable_chatstates'
author Mikael Berthe <mikael@lilotux.net>
date Wed, 01 Nov 2006 21:36:50 +0100
parents b37348c2aa79
children d0d0cd9e39c4
comparison
equal deleted inserted replaced
992:b37348c2aa79 993:0759f4c7da68
459 y = xmlnode_insert_tag(x, "subject"); 459 y = xmlnode_insert_tag(x, "subject");
460 xmlnode_insert_cdata(y, subject, (unsigned) -1); 460 xmlnode_insert_cdata(y, subject, (unsigned) -1);
461 } 461 }
462 462
463 #if defined JEP0022 || defined JEP0085 463 #if defined JEP0022 || defined JEP0085
464 // If typing notifications are disabled, we can skip all this stuff...
465 if (chatstates_disabled)
466 goto jb_send_msg_no_chatstates;
467
464 rname = strchr(jid, JID_RESOURCE_SEPARATOR); 468 rname = strchr(jid, JID_RESOURCE_SEPARATOR);
465 barejid = jidtodisp(jid); 469 barejid = jidtodisp(jid);
466 sl_buddy = roster_find(barejid, jidsearch, ROSTER_TYPE_USER); 470 sl_buddy = roster_find(barejid, jidsearch, ROSTER_TYPE_USER);
467 g_free(barejid); 471 g_free(barejid);
468 472
521 } 525 }
522 } 526 }
523 } 527 }
524 #endif 528 #endif
525 529
530 jb_send_msg_no_chatstates:
526 xmlnode_put_attrib(x, "id", msgid); 531 xmlnode_put_attrib(x, "id", msgid);
527 532
528 jab_send(jc, x); 533 jab_send(jc, x);
529 xmlnode_free(x); 534 xmlnode_free(x);
530 535
666 if (!jid) return; 671 if (!jid) return;
667 672
668 #ifdef JEP0085 673 #ifdef JEP0085
669 jep85 = buddy_resource_jep85(buddy, NULL); 674 jep85 = buddy_resource_jep85(buddy, NULL);
670 if (jep85 && jep85->support == CHATSTATES_SUPPORT_OK) { 675 if (jep85 && jep85->support == CHATSTATES_SUPPORT_OK) {
671 // FIXME: compare w/ last state sent...
672 jb_send_jep85_chatstate(jid, chatstate); 676 jb_send_jep85_chatstate(jid, chatstate);
673 return; 677 return;
674 } 678 }
675 #endif 679 #endif
676 #ifdef JEP0022 680 #ifdef JEP0022
677 jep22 = buddy_resource_jep22(buddy, NULL); 681 jep22 = buddy_resource_jep22(buddy, NULL);
678 if (jep22 && jep22->support == CHATSTATES_SUPPORT_OK) { 682 if (jep22 && jep22->support == CHATSTATES_SUPPORT_OK) {
679 // FIXME: compare w/ last state sent...
680 jb_send_jep22_event(jid, chatstate); 683 jb_send_jep22_event(jid, chatstate);
681 } 684 }
682 #endif 685 #endif
683 } 686 }
684 #endif 687 #endif