# HG changeset patch # User William Bowling # Date 1257222813 -39600 # Node ID 4758aba8104ad44c683e987131e84fa3daddd9ba # Parent cbafb75b094e86125f25d93be6e985cb5875e5a0 Bookmarks should not be able to be invited to chats. Removes the "Invite to Chat" menu for bookmarks as well as disabling drag and drop for bookmarks into group chats. diff -r cbafb75b094e86125f25d93be6e985cb5875e5a0 -r 4758aba8104ad44c683e987131e84fa3daddd9ba Plugins/Dual Window Interface/ESChatUserListController.m --- a/Plugins/Dual Window Interface/ESChatUserListController.m Tue Nov 03 10:52:11 2009 +1100 +++ b/Plugins/Dual Window Interface/ESChatUserListController.m Tue Nov 03 15:33:33 2009 +1100 @@ -21,6 +21,7 @@ #import #import #import "AIMessageTabViewItem.h" +#import "AIListBookmark.h" @implementation ESChatUserListController @@ -87,6 +88,13 @@ for (AIProxyListObject *proxyObject in dragItems) { AIListObject *listObject = proxyObject.listObject; + //Dont allow Bookmarks to be invited to chat + if ([listObject isKindOfClass:[AIListBookmark class]]) + { + success = NO; + break; + } + if ([listObject isKindOfClass:[AIMetaContact class]]) { listObject = [(AIMetaContact *)listObject preferredContactWithCompatibleService:activeChatAccount.service]; } @@ -122,6 +130,11 @@ for (AIProxyListObject *proxyObject in dragItems) { AIListObject *listObject = proxyObject.listObject; + //Dont allow bookmarks to be dropped + if ([listObject isKindOfClass:[AIListBookmark class]]) { + return NSDragOperationNone; + } + if ([listObject isKindOfClass:[AIMetaContact class]]) { listObject = [(AIMetaContact *)listObject preferredContactWithCompatibleService:activeChatAccount.service]; } diff -r cbafb75b094e86125f25d93be6e985cb5875e5a0 -r 4758aba8104ad44c683e987131e84fa3daddd9ba Plugins/Invite to Chat Plugin/DCInviteToChatPlugin.m --- a/Plugins/Invite to Chat Plugin/DCInviteToChatPlugin.m Tue Nov 03 10:52:11 2009 +1100 +++ b/Plugins/Invite to Chat Plugin/DCInviteToChatPlugin.m Tue Nov 03 15:33:33 2009 +1100 @@ -27,6 +27,7 @@ #import #import #import +#import "AIListBookmark.h" #define INVITE_CONTACT AILocalizedString(@"Invite to Chat",nil) @@ -117,7 +118,7 @@ NSArray *openChats = [adium.interfaceController openChats]; NSMenu *menu_chatMenu = nil; - if (contact && ![contact isKindOfClass:[AIListGroup class]]) { + if (contact && ![contact isKindOfClass:[AIListGroup class]] && ![contact isKindOfClass:[AIListBookmark class]]) { NSEnumerator *enumerator; NSString *serviceClass; NSDictionary *serviceDict;