[Adium-commits] adium 2024:7d1f373f7f87: Changelog updates.

adium-commits at adiumx.com adium-commits at adiumx.com
Tue Apr 28 19:55:45 UTC 2009


details:	http://hg.adiumx.com/adium/rev/7d1f373f7f87
revision:	2024:7d1f373f7f87
author:		Colin Barrett <colin at springsandstruts.com>
date:		Tue Apr 28 12:55:21 2009 -0700

Changelog updates.
Subject: adium 2025:662e64ed34f4: Merge.

details:	http://hg.adiumx.com/adium/rev/662e64ed34f4
revision:	2025:662e64ed34f4
author:		Colin Barrett <colin at springsandstruts.com>
date:		Tue Apr 28 12:55:37 2009 -0700

Merge.

diffstat:

 ChangeLogs/Changes.txt                                        |   2 +
 Frameworks/Adium Framework/Source/AIContactHidingController.m |   2 +-
 Frameworks/Adium Framework/Source/AIListGroup.m               |   2 +-
 Plugins/Purple Service/SLPurpleCocoaAdapter.m                 |  12 +++++-
 Plugins/Purple Service/adiumPurpleConversation.m              |  26 +++++++-----
 Source/AIURLHandlerPlugin.m                                   |  22 +++++------
 6 files changed, 39 insertions(+), 27 deletions(-)

diffs (154 lines):

diff -r 460e4914297f -r 662e64ed34f4 ChangeLogs/Changes.txt
--- a/ChangeLogs/Changes.txt	Tue Apr 28 02:54:34 2009 -0700
+++ b/ChangeLogs/Changes.txt	Tue Apr 28 12:55:37 2009 -0700
@@ -74,6 +74,7 @@
  * Fixed a bug where the view menu would show incorrect settings.
  * Status message is no longer searched when searching the contact list.
  * Fixed a lot of drag and drop bugs, such as being able to drag a group into another group.
+ * Tooltips now display for collapsed groups. (#11951)
 
 Message Styles
  * You can now specify a different style for group chats, and customize all of the preferences independently of a regular chat. (#87)
@@ -117,6 +118,7 @@
  * Group chats which are not anonymous now display the actual contact in the user list. (#11841)
  * Fixed receiving colors and fonts from iChat. (#1323)
  * Enabled support for custom emoticons as an account option defaulting to on.
+ * Fixed joining a group chat from an xmpp URL. (#11785)
 
 MSN
  * Possibly fixed a crash on connect. (#11508)
diff -r 460e4914297f -r 662e64ed34f4 Frameworks/Adium Framework/Source/AIContactHidingController.m
--- a/Frameworks/Adium Framework/Source/AIContactHidingController.m	Tue Apr 28 02:54:34 2009 -0700
+++ b/Frameworks/Adium Framework/Source/AIContactHidingController.m	Tue Apr 28 12:55:37 2009 -0700
@@ -168,7 +168,7 @@
 			return NO;
 	}
 		
-	if (!showIdleContacts && [listObject valueForProperty:@"IdleSince"])
+	if (!showIdleContacts && [listObject boolValueForProperty:@"IsIdle"])
 		return NO;
 	
 	if (!showMobileContacts && listObject.isMobile)
diff -r 460e4914297f -r 662e64ed34f4 Frameworks/Adium Framework/Source/AIListGroup.m
--- a/Frameworks/Adium Framework/Source/AIListGroup.m	Tue Apr 28 02:54:34 2009 -0700
+++ b/Frameworks/Adium Framework/Source/AIListGroup.m	Tue Apr 28 12:55:37 2009 -0700
@@ -115,7 +115,7 @@
 	NSSet *modifiedProperties = nil;
 	if (inModifiedKeys == nil ||
 			[inModifiedKeys containsObject:@"Online"] ||
-			[inModifiedKeys containsObject:@"IdleSince"] ||
+			[inModifiedKeys containsObject:@"IsIdle"] ||
 			[inModifiedKeys containsObject:@"Signed Off"] ||
 			[inModifiedKeys containsObject:@"Signed On"] ||
 			[inModifiedKeys containsObject:@"New Object"] ||
diff -r 460e4914297f -r 662e64ed34f4 Plugins/Purple Service/SLPurpleCocoaAdapter.m
--- a/Plugins/Purple Service/SLPurpleCocoaAdapter.m	Tue Apr 28 02:54:34 2009 -0700
+++ b/Plugins/Purple Service/SLPurpleCocoaAdapter.m	Tue Apr 28 12:55:37 2009 -0700
@@ -1162,7 +1162,11 @@
 
 - (BOOL)contact:(AIListContact *)inContact isIgnoredInChat:(AIChat *)inChat
 {
-	PurpleConversation *conv = convLookupFromChat(inChat, inChat.account);
+	PurpleConversation *conv = existingConvLookupFromChat(inChat);
+	
+	if (!conv)
+		return NO;
+	
 	PurpleConvChat *convChat = purple_conversation_get_chat_data(conv);
 
 	return (purple_conv_chat_is_user_ignored(convChat, [inContact.UID UTF8String]) ? YES : NO);
@@ -1170,7 +1174,11 @@
 
 - (void)setContact:(AIListContact *)inContact ignored:(BOOL)inIgnored inChat:(AIChat *)inChat
 {
-	PurpleConversation *conv = convLookupFromChat(inChat, inChat.account);
+	PurpleConversation *conv = existingConvLookupFromChat(inChat);
+	
+	if (!conv)
+		return;
+	
 	PurpleConvChat *convChat = purple_conversation_get_chat_data(conv);
 	
 	if ([self contact:inContact isIgnoredInChat:inChat]) {
diff -r 460e4914297f -r 662e64ed34f4 Plugins/Purple Service/adiumPurpleConversation.m
--- a/Plugins/Purple Service/adiumPurpleConversation.m	Tue Apr 28 02:54:34 2009 -0700
+++ b/Plugins/Purple Service/adiumPurpleConversation.m	Tue Apr 28 12:55:37 2009 -0700
@@ -276,23 +276,27 @@
 	PurplePluginProtocolInfo  *prpl_info = (prpl ? PURPLE_PLUGIN_PROTOCOL_INFO(prpl) : NULL);
 	PurpleConvChat *convChat = purple_conversation_get_chat_data(conv);
 	
+	char *uid = NULL;
+	
 	NSString *normalizedUID;
 	
 	if (prpl_info && prpl_info->get_cb_real_name) {
 		// Get the real name of the buddy for use as a UID, if available.
-		char *uid = prpl_info->get_cb_real_name(purple_account_get_connection(account),
-												purple_conv_chat_get_id(convChat),
-												who);
-		
-		normalizedUID = [NSString stringWithUTF8String:purple_normalize(account, uid)];
-		
-		// We have to free the result of get_cb_real_name.
-		g_free(uid);
-	} else {
-		// Otherwise use the normalized name for the UID.
-		normalizedUID = [NSString stringWithUTF8String:purple_normalize(account, who)];
+		uid = prpl_info->get_cb_real_name(purple_account_get_connection(account),
+										  purple_conv_chat_get_id(convChat),
+										  who);
 	}
 	
+	if (!uid) {
+		// strdup it, mostly so the free below won't have to be cased out.
+		uid = g_strdup(who);
+	}
+		
+	normalizedUID = [NSString stringWithUTF8String:purple_normalize(account, uid)];
+		
+	// We have to free the result of get_cb_real_name.
+	g_free(uid);
+
 	return normalizedUID;
 }
 
diff -r 460e4914297f -r 662e64ed34f4 Source/AIURLHandlerPlugin.m
--- a/Source/AIURLHandlerPlugin.m	Tue Apr 28 02:54:34 2009 -0700
+++ b/Source/AIURLHandlerPlugin.m	Tue Apr 28 12:55:37 2009 -0700
@@ -390,10 +390,8 @@
 				// xmpp:johndoe at jabber.org?remove
 				// xmpp:johndoe at jabber.org?unsubscribe
 				
-			} else if (([query caseInsensitiveCompare:@"join"] == NSOrderedSame) &&
-					   ([scheme caseInsensitiveCompare:@"xmpp"] == NSOrderedSame)) {
+			} else if ([query rangeOfString:@"join"].location == 0) {
 				NSString *password = [[url queryArgumentForKey:@"password"] stringByDecodingURLEscapes];
-				//TODO: password support: xmpp:darkcave at macbeth.shakespeare.lit?join;password=cauldronburn
 				
 				[self _openXMPPGroupChat:[url user]
 								onServer:[url host]
@@ -529,15 +527,15 @@
 	}
 	
 	if (name && account) {
-		[adium.chatController chatWithName:name
-		 identifier:nil
-		 onAccount:account
-		 chatCreationInfo:[NSDictionary dictionaryWithObjectsAndKeys:
-						   name, @"room",
-						   server, @"server",
-						   account.formattedUID, @"handle",
-						   password, @"password", /* may be nil, so should be last */
-						   nil]];
+		[adium.chatController chatWithName:[NSString stringWithFormat:@"%@@%@", name, server]
+								identifier:nil
+								 onAccount:account
+						  chatCreationInfo:[NSDictionary dictionaryWithObjectsAndKeys:
+											name, @"room",
+											server, @"server",
+											account.displayName, @"handle",
+											password, @"password", /* may be nil, so should be last */
+											nil]];
 	} else {
 		NSBeep();
 	}




More information about the commits mailing list