Adium

Ticket #8112: psychic.diff

File psychic.diff, 1.7 kB (added by adyess, 1 year ago)
  • trunk/Psychic/AIPsychicPlugin.m

    old new  
    33//  Psychic 
    44// 
    55//  Created by Evan Schoenberg on 5/12/07. 
     6//----------------------------------------- 
     7//  Revised to provide pop-up by Adam Dyess on 10/10/07 
    68// 
    79 
    810#import "AIPsychicPlugin.h" 
    911#include <Libpurple/libpurple.h> 
    1012#import <Adium/AIListContact.h> 
    1113#import <Adium/AIChat.h> 
     14#import <Adium/AIAdiumProtocol.h> 
     15#import <Adium/AIContentControllerProtocol.h> 
     16#import <Adium/AIChatControllerProtocol.h> 
    1217#import <AdiumLibpurple/SLPurpleCocoaAdapter.h> 
    1318 
    1419@implementation AIPsychicPlugin 
    1520 
    1621static void typing_changed(PurpleAccount *acct, const char *name, AITypingState typingState) 
    1722{ 
    18         AIListContact *contact = contactLookupFromBuddy(purple_find_buddy(acct, name)); 
    19         [contact setStatusObject:[NSNumber numberWithInt:typingState] forKey:KEY_TYPING notify:NotifyNow];               
     23        AIListContact *contact = contactLookupFromBuddy(purple_find_buddy(acct, name));  
     24//      [contact setStatusObject:[NSNumber numberWithInt:typingState] forKey:KEY_TYPING notify:NotifyNow]; 
     25    //Open a new chat window with this contact 
     26        NSObject <AIAdium> *adium = [AIObject sharedAdiumInstance]; 
     27        if(adium != nil) 
     28        { 
     29                AIChat* chat = [[adium chatController] existingChatWithContact:contact]; 
     30                if((chat == nil)&&(typingState != AINotTyping)) 
     31                { 
     32                        [[adium contentController] displayEvent:@"You feel a disturbance in the Force" 
     33                                                                           ofType:@"psychicEvent" 
     34                                                                           inChat:((AIChat *)[[adium chatController] chatWithContact:contact])];         
     35                } 
     36        } 
    2037} 
    2138 
    2239static void