1.1 --- a/Plugins/Purple Service/ESIRCAccount.m Sat Oct 31 22:52:55 2009 -0400
1.2 +++ b/Plugins/Purple Service/ESIRCAccount.m Sat Oct 31 22:58:03 2009 -0400
1.3 @@ -454,24 +454,27 @@
1.4 {
1.5 AIOperationRequirement req = menuItem.tag;
1.6 AIChat *chat = adium.interfaceController.activeChat;
1.7 -
1.8 - if (!chat.chatContainer.messageViewController.selectedListObjects.count) {
1.9 - return NO;
1.10 - }
1.11 -
1.12 + BOOL anySelected = chat.chatContainer.messageViewController.selectedListObjects.count > 0;
1.13 +
1.14 AIGroupChatFlags flags = [self flagsInChat:chat];
1.15
1.16 switch (req) {
1.17 case AIRequiresHalfop:
1.18 - return ((flags & AIGroupChatOp) == AIGroupChatOp || (flags & AIGroupChatHalfOp) == AIGroupChatHalfOp);
1.19 + return (anySelected && ((flags & AIGroupChatOp) == AIGroupChatOp || (flags & AIGroupChatHalfOp) == AIGroupChatHalfOp));
1.20 break;
1.21
1.22 case AIRequiresOp:
1.23 - return ((flags & AIGroupChatOp) == AIGroupChatOp);
1.24 + return (anySelected && ((flags & AIGroupChatOp) == AIGroupChatOp));
1.25 + break;
1.26 +
1.27 + case AIRequiresNoLevel:
1.28 + return anySelected;
1.29 + break;
1.30 +
1.31 + default:
1.32 + return YES;
1.33 break;
1.34 }
1.35 -
1.36 - return NO;
1.37 }
1.38
1.39 #pragma mark Action Menu's Actions