adium/adium

Merged adium-1.5.8 into adium-1.6.
adium-1.6
2013-09-10, Thijs Alkemade
3b5d579f7ab2
Merged adium-1.5.8 into adium-1.6.
--- a/.hgtags Sun Jul 07 21:10:54 2013 +0200
+++ b/.hgtags Tue Sep 10 14:15:35 2013 +0200
@@ -1,11 +1,8 @@
4151ac3a3b1f9847b8d958f1c7d57a345d442266 1.5
64b4f46272118a2d4d721123fbcb9f485913ff35 1.5.1
-8d4ed0d28f89a09c3deb3b4b1952e21cd4a5e563 1.5.2
-c436f536180fc12b1c2f70ae31e29a2b32b4529f 1.5.4
-5efcd11df6947cf82c763a8024229d5a326d9c56 adium-1.5.4
-0000000000000000000000000000000000000000 adium-1.5.4
+80cc358134ea0f681484626ec447d8bf3a27692f 1.5.2
+c9b03688370c2887d956130319c8da537354d373 1.5.3
+5efcd11df6947cf82c763a8024229d5a326d9c56 1.5.4
+fc2294917bf61da7cf8c1560db443fe29e2acfb8 1.5.5
90a171a6b0fc033ebeba46112223e20fcee0a004 1.5.6
-fc2294917bf61da7cf8c1560db443fe29e2acfb8 1.5.5
a40ffe152e617ebb603ce3c6677eef0ce00cb1ad 1.5.7
-a40ffe152e617ebb603ce3c6677eef0ce00cb1ad 1.5.7
-c72b164f75a705caf2b01853be031399d10c254e 1.5.7
--- a/Adium.xcodeproj/project.pbxproj Sun Jul 07 21:10:54 2013 +0200
+++ b/Adium.xcodeproj/project.pbxproj Tue Sep 10 14:15:35 2013 +0200
@@ -1067,6 +1067,8 @@
5ACF273A1392C74A004B6AEF /* AIHighlightingTextField.m in Sources */ = {isa = PBXBuildFile; fileRef = 5ACF27361392C74A004B6AEF /* AIHighlightingTextField.m */; };
5ACF273B1392C74A004B6AEF /* AIPreferenceCollectionView.h in Headers */ = {isa = PBXBuildFile; fileRef = 5ACF27371392C74A004B6AEF /* AIPreferenceCollectionView.h */; };
5ACF273C1392C74A004B6AEF /* AIPreferenceCollectionView.m in Sources */ = {isa = PBXBuildFile; fileRef = 5ACF27381392C74A004B6AEF /* AIPreferenceCollectionView.m */; };
+ 5AC423F3178CBD5100F5911A /* ChatCyclingDefaults-Old.plist in Resources */ = {isa = PBXBuildFile; fileRef = 34D7F1E815F85DD300F32F9B /* ChatCyclingDefaults-Old.plist */; };
+ 5AC423F7178CBD5700F5911A /* ChatCyclingDefaults.plist in Resources */ = {isa = PBXBuildFile; fileRef = 34D7F1E915F85DD300F32F9B /* ChatCyclingDefaults.plist */; };
5ADFFE5D133846C300069C1B /* keys.png in Resources */ = {isa = PBXBuildFile; fileRef = 5ADFFE5C133846C300069C1B /* keys.png */; };
5AEE60011602BAE200304672 /* AIBoolToControlTextColorTransformer.m in Sources */ = {isa = PBXBuildFile; fileRef = 979AA6A614D59DC8008730DF /* AIBoolToControlTextColorTransformer.m */; };
6311F4710E340DD2004234B8 /* AISharedAdium.h in Headers */ = {isa = PBXBuildFile; fileRef = 6311F46F0E340DD2004234B8 /* AISharedAdium.h */; settings = {ATTRIBUTES = (Public, ); }; };
@@ -9988,6 +9990,8 @@
C613B143164112B3006683FF /* events-dock-name.tiff in Resources */,
C613B1451641210B006683FF /* events-contact.tiff in Resources */,
5A0BBC4317400544002A7BE0 /* emoticons_menu@2x.png in Resources */,
+ 5AC423F3178CBD5100F5911A /* ChatCyclingDefaults-Old.plist in Resources */,
+ 5AC423F7178CBD5700F5911A /* ChatCyclingDefaults.plist in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
--- a/AdiumHelp/pgs/Accounts-CreatingAccounts.html Sun Jul 07 21:10:54 2013 +0200
+++ b/AdiumHelp/pgs/Accounts-CreatingAccounts.html Tue Sep 10 14:15:35 2013 +0200
@@ -61,7 +61,6 @@
<li><a class="ext_link" href="http://www.livejournal.com/chat/">LiveJournal</a></li>
<li><a class="ext_link" href="http://www.passport.com/">MSN Messenger</a></li>
<li><a class="ext_link" href="http://edit.yahoo.com/">Yahoo!Messenger</a></li>
- <li><a class="ext_link" href="https://trac.adium.im/wiki/Zephyr">Zephyr</a></li>
</ul>
</li>
<li>Paid Services
--- a/AdiumHelp/pgs/AdvancedFeatures-AdiumXtras.html Sun Jul 07 21:10:54 2013 +0200
+++ b/AdiumHelp/pgs/AdvancedFeatures-AdiumXtras.html Tue Sep 10 14:15:35 2013 +0200
@@ -68,7 +68,7 @@
<h3>Getting support for an Xtra</h3>
</div>
<div class="taskboxtext">
- <p>An Xtra installed from the Adium Xtras site is supported by the Xtra's author. The first place to seek support is on the Xtra's page, probably in the comments unless the Author has given other instructions. If that doesn't work, try the <a class="ext_link" href="http://forum.adium.im/">Adium forums</a>.</p>
+ <p>An Xtra installed from the Adium Xtras site is supported by the Xtra's author. The first place to seek support is on the Xtra's page, probably in the comments unless the author has given other instructions. If that doesn't work, try the <a class="ext_link" href="http://forums.cocoaforge.com/viewforum.php?f=13">Adium forum</a>.</p>
</div>
</div>
<div class="taskboxline">
--- a/AdiumHelp/pgs/AdvancedFeatures-OTREncryption.html Sun Jul 07 21:10:54 2013 +0200
+++ b/AdiumHelp/pgs/AdvancedFeatures-OTREncryption.html Tue Sep 10 14:15:35 2013 +0200
@@ -47,10 +47,10 @@
<div class="taskboxtext">
<p></p>
<ol>
- <li>Open a chat with the contact with whom you want to have a private conversation.</li>
- <li>Notice the "Encryption" item in the toolbar appears unlocked. It signifies the chat currently is not encrypted. Click the icon and select "Initiate Encrypted OTR Chat".</li>
- <li>You will be prompted to verify the fingerprint. If you are certain of its trustworthy origin click "Accept".</li>
- <li>Notice the previously unlocked icon is now locked and the message "Encrypted OTR chat initiated" is displayed in the message view.</li>
+ <li>Open a chat with the contact with whom you want to have a private conversation. Notice the "Encryption" item in the toolbar appears unlocked. It signifies the chat currently is not encrypted.</li>
+ <li>Click the icon and select "Initiate Encrypted OTR Chat". Notice the previously unlocked icon is now locked.</li>
+ <li>You will be prompted to verify the fingerprint of your contact. If you are certain of its trustworthy origin click "Accept".</li>
+ <p>Next time you start an OTR chat with the same contact, Adium will remember you verified their fingerprint so you will not have to do so again.</p>
</ol>
</div>
</div>
--- a/AdiumHelp/pgs/AdvancedFeatures-VisualNotifications.html Sun Jul 07 21:10:54 2013 +0200
+++ b/AdiumHelp/pgs/AdvancedFeatures-VisualNotifications.html Tue Sep 10 14:15:35 2013 +0200
@@ -38,8 +38,8 @@
<div class="taskboxtext">
<p>The third-party application Growl.app has been around about as long as Adium itself – a long time before Apple introduced "Notification Center" (NC) in OS X 10.8 ("Mountain Lion").</p>
<p>While Growl.app is the obvious solution for users on previous versions of OS X, it also has a lot to offer to OS X users on 10.8, especially in the way of customisability and extendability. For example, there are dozens of different styles to choose from.</p>
- <p>To install Growl.app either <a class="ext_link" href="https://itunes.apple.com/de/app/growl/id467939042?mt=12">buy the application from the Mac App Store</a>, or get an older and free version from <a class="ext_link" href="http://growl.info/downloads">http://growl.info/downloads</a>.</p>
- <p>If you have Growl.app installed and would prefer to use Notification Center notifications for Adium, you need make the change in Growl's preferences.</p>
+ <p>To install Growl.app either <a class="ext_link" href="https://itunes.apple.com/de/app/growl/id467939042?mt=12">buy the application from the Mac App Store</a> (recommended, it's not expensive), or get an older and free version from <a class="ext_link" href="http://growl.info/downloads">http://growl.info/downloads</a> (not recommended and not supported on OS X 10.8 and later).</p>
+ <p>If you have Growl.app installed and would prefer to use Notification Center notifications for Adium, you need to make the change in Growl's preferences.</p>
<p>To uninstall the Growl application, follow the <a class="ext_link" href="http://growl.info/documentation/growl-package-removal.php">instructions on the Growl website</a>.</p>
</div>
</div>
@@ -50,7 +50,7 @@
<p align="center"> <img src="../gfx/MistNotification.png" alt="" /></p>
<div class="taskboxtext">
<p>As of Adium 1.5, Adium is able to show Growl-style notifications on OS X versions 10.7 and 10.6 without the Growl application installed. This feature is called <a class="ext_link" href="http://growl.info/notetodevelopers">Mist</a>.</p>
- <p>If you want to use a different style or use some of the more advanced features of Growl, you will have to either <a class="ext_link" href="https://itunes.apple.com/de/app/growl/id467939042?mt=12">buy the application from the Mac App Store</a>, or get an older and free version from <a class="ext_link" href="http://growl.info/downloads">http://growl.info/downloads</a>.</p>
+ <p>If you want to use a different style or use some of the more advanced features of Growl, you will have to either <a class="ext_link" href="https://itunes.apple.com/de/app/growl/id467939042?mt=12">buy the application from the Mac App Store</a> (recommended, it's not expensive), or get an older and free version from <a class="ext_link" href="http://growl.info/downloads">http://growl.info/downloads</a> (not recommended and not supported on OS X 10.8 and later).</p>
<p>To disable Mist notifications, enter this command in Terminal.app: <code>defaults write -g com.growl.growlframework.mist.enabled -bool NO</code>. Please note that this affects any apps that support built-in Mist notifications like Adium does.<p>
</div>
</div>
--- a/AdiumHelp/pgs/Messaging-GroupChat.html Sun Jul 07 21:10:54 2013 +0200
+++ b/AdiumHelp/pgs/Messaging-GroupChat.html Tue Sep 10 14:15:35 2013 +0200
@@ -24,7 +24,7 @@
<h3>Initiating/joining a group chat</h3>
</div>
<div class="taskboxtext">
- <p><b>AIM, Jabber, SameTime, Yahoo, Zephyr</b></p>
+ <p><b>AIM, Jabber, SameTime, Yahoo</b></p>
<p>Choose <b>File</b> → <b>Join Group</b> Chat and enter the details for the chat. You may invite contacts to join you in the chat immediately via the Join Group Chat window, and you may invite them later by:</p>
<ul>
<li>Selecting them in the contact list and choosing <b>Contact</b> → <b>Invite to Chat</b> and selecting the chat, or</li>
--- a/AdiumHelp/pgs/Miscellaneous-AVSkypeSupport.html Sun Jul 07 21:10:54 2013 +0200
+++ b/AdiumHelp/pgs/Miscellaneous-AVSkypeSupport.html Tue Sep 10 14:15:35 2013 +0200
@@ -31,9 +31,10 @@
<h3>Skype support</h3>
</div>
<div class="taskboxtext">
- <p>Yes and no.</p>
- <p>Yes: The third-party <a href="http://xtras.adium.im/index.php?a=xtras&amp;xtra_id=5011">Skype Plugin</a> allows Adium to use the <a class="ext_link" href="https://developer.skype.com/Docs/ApiDoc">Skype API</a> to display your Skype contacts within Adium and let you chat with them via text-based instant messaging. By the nature of the Skype API, it requires that the Skype program be installed and running.</p>
- <p>No: It's not supported natively within Adium (i.e., without a plugin). The library that we use to support most protocols, <a href="https://trac.adium.im/wiki/LibPurple">libpurple</a>, doesn't support Skype at all right now, not even for chat. Until it does Adium most likely won't, either.</p>
+ <p>Adium does not natively (i.e., without a plugin) support Skype.</p>
+ <p>However, there is an unofficial third-party <a href="http://xtras.adium.im/index.php?a=xtras&amp;xtra_id=5011">Skype Plugin</a> which allows Adium to use the <a class="ext_link" href="https://developer.skype.com/Docs/ApiDoc">Skype API</a> to display your Skype contacts within Adium and let you chat with them via text-based instant messaging. By the nature of the Skype API, it requires that the Skype program be installed and running.</p>
+ <p><strong>Why does Adium not officially support Skype?</strong></p>
+ <p>The library that we use to support most protocols, <a href="https://trac.adium.im/wiki/LibPurple">libpurple</a>, doesn't support Skype at all right now, not even for chat. Until it does Adium most likely won't, either.</p>
<p>Keep in mind that Skype is a proprietary, closed protocol, so it must be reverse-engineered before third-party clients like Pidgin and Adium can use it. Protocols like OSCAR (which AIM and ICQ are based on) and MSN have already been reverse-engineered, but they're much older than Skype, and reverse-engineering is hard. It will take a long time and won't happen at all unless someone chooses to take interest in it and dedicate significant time to the effort.</p>
<p><strong>What about the Skype API?</strong></p>
<p>Using the Skype API, as the Skype Plugin does, means that Skype must be running. We don't accept piggybacking on the official client as a substitute.</p>
--- a/AdiumHelp/pgs/ServiceInformation-TwitterSupport.html Sun Jul 07 21:10:54 2013 +0200
+++ b/AdiumHelp/pgs/ServiceInformation-TwitterSupport.html Tue Sep 10 14:15:35 2013 +0200
@@ -34,7 +34,7 @@
</div>
<div class="taskboxline">
<div class="taskboxheader">
- <h3>Showing people your followers in the contact list</h3>
+ <h3>Showing your followers in the contact list</h3>
</div>
<div class="taskboxtext">
<p>By default, your followers are shown in your contact list. This setting can be edited in the <strong>Options</strong> tab of your Twitter account's preferences.</p>
--- a/AdiumHelp/pgs/Troubleshooting-RecoveringLostPasswords.html Sun Jul 07 21:10:54 2013 +0200
+++ b/AdiumHelp/pgs/Troubleshooting-RecoveringLostPasswords.html Tue Sep 10 14:15:35 2013 +0200
@@ -24,7 +24,7 @@
<h3>Looking your password up in Keychain Access</h3>
</div>
<div class="taskboxtext">
- <p>If you don't remember what service you use, you'll first need to open up the Accounts pane of Adium's Preferences, and then refer to the <a href="https://trac.adium.im/wiki/ListOfServices">"ListOfServices"</a> entry on the online Adium Wiki to determine the name of the service.</p>
+ <p>If you don't remember what service you use, you'll first need to open up the Accounts pane of Adium's Preferences, and then refer to <a href="Accounts-ListOfServices.html">"ListOfServices"</a> to determine the name of the service.</p>
<ol>
<li>Launch Keychain Access.
<div style="float:right"><img src="../gfx/RecoveringLostPasswords-KeychainAccess.png" alt="Path to Keychain Access." /></div>
@@ -51,7 +51,7 @@
<p>If you can't find any IM-service passwords in the Keychain, or none of them work, you'll have to have the IM service change your password.</p>
<p>Most services, if not all, don't keep a clear-text copy of your password to send you because if they lost that database (by accident or by theft), people's accounts could be compromised. They keep only an encrypted version of the password, which is more secure, but inconvenient because it leaves changing it as your only option.</p>
<p><i>Again, note that Adium is a third-party client; we don't run any of the instant-messaging services that Adium supports. If you want your password sent to you or changed, you'll need to contact the IM service that you're using.</i></p>
- <p>We maintain a list of contact information for various services on the <a href="../../Accounts-CreatingAnAccount.html">Creating an Account</a> page. We're not recommending that you throw away your old account and create a new one—it just happens to be the same contact information.</p>
+ <p>We maintain a list of contact information for various services on the <a href="Accounts-CreatingAccounts.html">Creating accounts</a> page. We're not recommending that you throw away your old account and create a new one—it just happens to be the same contact information.</p>
<p>Once you have your password up and running, we recommend that you turn on the “Remember Password” option in Adium. This saves your password in the Mac OS X Keychain, so that you won't have to enter it every time you launch Adium. The Keychain encrypts the password, so it is secure, and it allows you to look it up if you ever need it again.
</p>
</div>
--- a/ChangeLogs/Changes.txt Sun Jul 07 21:10:54 2013 +0200
+++ b/ChangeLogs/Changes.txt Tue Sep 10 14:15:35 2013 +0200
@@ -62,10 +62,13 @@
- Fixed DNS leaks in libpurple. / Added a "Tor (SOCKS5)" proxy option, which uses the Tor proxy option of libpurple. (#15161)
- "Proxy bypass when registered jabber handle" (#15957)
-Version 1.5.8 (XX/XX/2XXX)
+Version 1.5.8 (XX/XX/2013)
+ * Changed the default tab switching shortcuts for new users to Control-Tab/Control-Shift-Tab, to match Safari. This was meant to be done for 1.5.4 but it did not work that time. (#16102)
+ * XMPP: refer to XMPP as "XMPP (Jabber)". Unfortunately, just "XMPP" still has some potential for confusion. (#16435)
* Fixed SIP accountnames to be case-sensitive. (Pete Woods) (#16237)
- * Fixed a bug that could cause Adium and other applications to hang and could lead to corruption of the Keychain when permanently trusting an untrusted SSL certificate. (#16365)
-
+ * Enabled a large number of TLS cipher suites, including ECC suites and suites new in TLS 1.2.
+ * Fix a problem causing Sametime login to fail. (Jonathan Rice) (#16345)
+ * Try to avoid Twitter's rate limiting causing Adium to go in a reconnection loop. (#16418)
Version 1.5.7 (7/2/2013)
* Updated Twitter support. (#16118)
--- a/Frameworks/Adium Framework/Source/AIAbstractAccount.h Sun Jul 07 21:10:54 2013 +0200
+++ b/Frameworks/Adium Framework/Source/AIAbstractAccount.h Tue Sep 10 14:15:35 2013 +0200
@@ -100,6 +100,7 @@
//FUS Disconnecting
- (void)autoReconnectAfterDelay:(NSTimeInterval)delay;
+- (double)minimumReconnectTime;
- (void)cancelAutoReconnect;
- (void)initFUSDisconnecting;
--- a/Frameworks/Adium Framework/Source/AIAbstractAccount.m Sun Jul 07 21:10:54 2013 +0200
+++ b/Frameworks/Adium Framework/Source/AIAbstractAccount.m Tue Sep 10 14:15:35 2013 +0200
@@ -1333,6 +1333,11 @@
return _contactProperties;
}
+- (double)minimumReconnectTime
+{
+ return RECONNECT_MIN_TIME;
+}
+
/*!
* @brief Did disconnect
*/
@@ -1389,8 +1394,8 @@
double reconnectDelay = pow(RECONNECT_BASE_TIME, (double)reconnectAttemptsPerformed);
// Make sure we're not going too fast
- if (reconnectDelay < RECONNECT_MIN_TIME)
- reconnectDelay = RECONNECT_MIN_TIME;
+ if (reconnectDelay < [self minimumReconnectTime])
+ reconnectDelay = [self minimumReconnectTime];
// Or too slow
else if (reconnectDelay > RECONNECT_MAX_TIME)
reconnectDelay = RECONNECT_MAX_TIME;
--- a/Plists/Info.plist Sun Jul 07 21:10:54 2013 +0200
+++ b/Plists/Info.plist Tue Sep 10 14:15:35 2013 +0200
@@ -493,7 +493,7 @@
<key>SUCheckAtStartup</key>
<true/>
<key>SUFeedURL</key>
- <string>http://www.adium.im/sparkle/update.php</string>
+ <string>https://www.adium.im/sparkle/update.php</string>
<key>SUPublicDSAKeyFile</key>
<string>dsa_pub.pem</string>
<key>SUScheduledCheckInterval</key>
--- a/Plugins/Purple Service/ESJabberService.m Sun Jul 07 21:10:54 2013 +0200
+++ b/Plugins/Purple Service/ESJabberService.m Tue Sep 10 14:15:35 2013 +0200
@@ -86,7 +86,7 @@
return @"XMPP";
}
- (NSString *)longDescription{
- return @"XMPP";
+ return @"XMPP (Jabber)";
}
/*!
--- a/Plugins/Purple Service/libpurple_extensions/ssl-cdsa.c Sun Jul 07 21:10:54 2013 +0200
+++ b/Plugins/Purple Service/libpurple_extensions/ssl-cdsa.c Tue Sep 10 14:15:35 2013 +0200
@@ -217,6 +217,11 @@
/* SSL connected now */
gsc->connect_cb(gsc->connect_cb_data, gsc, cond);
}
+
+ SSLCipherSuite suite;
+ SSLGetNegotiatedCipher(cdsa_data->ssl_ctx, &suite);
+
+ purple_debug_info("cdsa", "Using cipher %x.\n", suite);
}
/*
@@ -325,6 +330,77 @@
return ortn;
}
+static gboolean
+ssl_cdsa_use_cipher(SSLCipherSuite suite) {
+ switch (suite) {
+ case SSL_RSA_WITH_3DES_EDE_CBC_MD5:
+ case SSL_RSA_WITH_RC2_CBC_MD5:
+ case SSL_RSA_WITH_3DES_EDE_CBC_SHA:
+ case SSL_DH_DSS_WITH_3DES_EDE_CBC_SHA:
+ case SSL_DH_RSA_WITH_3DES_EDE_CBC_SHA:
+ case SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA:
+ case SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA:
+ case TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA:
+ case TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA:
+ case TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA:
+ case TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA:
+ case SSL_RSA_WITH_RC4_128_MD5:
+ case SSL_RSA_WITH_RC4_128_SHA:
+ case TLS_ECDH_ECDSA_WITH_RC4_128_SHA:
+ case TLS_ECDHE_ECDSA_WITH_RC4_128_SHA:
+ case TLS_ECDH_RSA_WITH_RC4_128_SHA:
+ case TLS_ECDHE_RSA_WITH_RC4_128_SHA:
+ case TLS_RSA_WITH_AES_128_CBC_SHA:
+ case TLS_DH_DSS_WITH_AES_128_CBC_SHA:
+ case TLS_DH_RSA_WITH_AES_128_CBC_SHA:
+ case TLS_DHE_DSS_WITH_AES_128_CBC_SHA:
+ case TLS_DHE_RSA_WITH_AES_128_CBC_SHA:
+ case TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA:
+ case TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA:
+ case TLS_ECDH_RSA_WITH_AES_128_CBC_SHA:
+ case TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA:
+ case TLS_RSA_WITH_AES_256_CBC_SHA:
+ case TLS_DH_DSS_WITH_AES_256_CBC_SHA:
+ case TLS_DH_RSA_WITH_AES_256_CBC_SHA:
+ case TLS_DHE_DSS_WITH_AES_256_CBC_SHA:
+ case TLS_DHE_RSA_WITH_AES_256_CBC_SHA:
+ case TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA:
+ case TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA:
+ case TLS_ECDH_RSA_WITH_AES_256_CBC_SHA:
+ case TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA:
+ case TLS_RSA_WITH_AES_128_GCM_SHA256:
+ case TLS_RSA_WITH_AES_256_GCM_SHA384:
+ case TLS_DHE_RSA_WITH_AES_128_GCM_SHA256:
+ case TLS_DHE_RSA_WITH_AES_256_GCM_SHA384:
+ case TLS_DH_RSA_WITH_AES_128_GCM_SHA256:
+ case TLS_DH_RSA_WITH_AES_256_GCM_SHA384:
+ case TLS_DHE_DSS_WITH_AES_128_GCM_SHA256:
+ case TLS_DHE_DSS_WITH_AES_256_GCM_SHA384:
+ case TLS_DH_DSS_WITH_AES_128_GCM_SHA256:
+ case TLS_DH_DSS_WITH_AES_256_GCM_SHA384:
+ case TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256:
+ case TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384:
+ case TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256:
+ case TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384:
+ case TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256:
+ case TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384:
+ case TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256:
+ case TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384:
+ case TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256:
+ case TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384:
+ case TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256:
+ case TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384:
+ case TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256:
+ case TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384:
+ case TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256:
+ case TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384:
+ return TRUE;
+
+ default:
+ return FALSE;
+ }
+}
+
static void
ssl_cdsa_create_context(gpointer data) {
PurpleSslConnection *gsc = (PurpleSslConnection *)data;
@@ -372,9 +448,9 @@
/*
* Pass the connection information to the connection to be used by our callbacks
*/
- err = (OSStatus)SSLSetConnection(cdsa_data->ssl_ctx, (SSLConnectionRef)(intptr_t)gsc->fd);
+ err = SSLSetConnection(cdsa_data->ssl_ctx, (SSLConnectionRef)(intptr_t)gsc->fd);
if (err != noErr) {
- purple_debug_error("cdsa", "SSLSetConnection failed\n");
+ purple_debug_error("cdsa", "SSLSetConnection failed: %d\n", err);
if (gsc->error_cb != NULL)
gsc->error_cb(gsc, PURPLE_SSL_HANDSHAKE_FAILED,
gsc->connect_cb_data);
@@ -383,6 +459,55 @@
return;
}
+ size_t numCiphers = 0;
+
+ err = SSLGetNumberEnabledCiphers(cdsa_data->ssl_ctx, &numCiphers);
+
+ if (err != noErr) {
+ purple_debug_error("cdsa", "SSLGetNumberEnabledCiphers failed: %d\n", err);
+ if (gsc->error_cb != NULL)
+ gsc->error_cb(gsc, PURPLE_SSL_HANDSHAKE_FAILED,
+ gsc->connect_cb_data);
+
+ purple_ssl_close(gsc);
+ return;
+ }
+
+ SSLCipherSuite ciphers[numCiphers];
+
+ err = SSLGetEnabledCiphers(cdsa_data->ssl_ctx, ciphers, &numCiphers);
+ if (err != noErr) {
+ purple_debug_error("cdsa", "SSLGetSupportedCiphers failed: %d\n", err);
+ if (gsc->error_cb != NULL)
+ gsc->error_cb(gsc, PURPLE_SSL_HANDSHAKE_FAILED,
+ gsc->connect_cb_data);
+
+ purple_ssl_close(gsc);
+ return;
+ }
+
+ SSLCipherSuite enabledCiphers[numCiphers];
+ size_t numEnabledCiphers = 0;
+ int i;
+
+ for (i = 0; i < numCiphers; i++) {
+ if (ssl_cdsa_use_cipher(ciphers[i])) {
+ enabledCiphers[numEnabledCiphers] = ciphers[i];
+ numEnabledCiphers++;
+ }
+ }
+
+ err = SSLSetEnabledCiphers(cdsa_data->ssl_ctx, enabledCiphers, numEnabledCiphers);
+ if (err != noErr) {
+ purple_debug_error("cdsa", "SSLSetEnabledCiphers failed: %d\n", err);
+ if (gsc->error_cb != NULL)
+ gsc->error_cb(gsc, PURPLE_SSL_HANDSHAKE_FAILED,
+ gsc->connect_cb_data);
+
+ purple_ssl_close(gsc);
+ return;
+ }
+
if (purple_account_get_bool(account, PURPLE_SSL_CDSA_BUGGY_TLS_WORKAROUND, false)) {
purple_debug_info("cdsa", "Explicitly disabling TLS 1.1 and above to try and work around buggy TLS stacks\n");
@@ -396,7 +521,6 @@
return;
}
- protoErr = SSLSetProtocolVersionEnabled(cdsa_data->ssl_ctx, kSSLProtocol2, true);
protoErr = SSLSetProtocolVersionEnabled(cdsa_data->ssl_ctx, kSSLProtocol3, true);
protoErr = SSLSetProtocolVersionEnabled(cdsa_data->ssl_ctx, kTLSProtocol1, true);
}
--- a/Plugins/Twitter Plugin/AITwitterAccount.m Sun Jul 07 21:10:54 2013 +0200
+++ b/Plugins/Twitter Plugin/AITwitterAccount.m Tue Sep 10 14:15:35 2013 +0200
@@ -290,6 +290,15 @@
}
/*!
+ * @brief A disconnect on Twitter often means we broke some rate-limit, or the server is overloaded.
+ * Lets be polite and wait for 15 minutes.
+ */
+- (double)minimumReconnectTime
+{
+ return 15.0 * 60.0;
+}
+
+/*!
* @brief Session ended
*
* Remove all state information.
--- a/Plugins/Twitter Plugin/STTwitter/STTwitterAPIWrapper.m Sun Jul 07 21:10:54 2013 +0200
+++ b/Plugins/Twitter Plugin/STTwitter/STTwitterAPIWrapper.m Tue Sep 10 14:15:35 2013 +0200
@@ -75,7 +75,7 @@
appOnly.consumerSecret = consumerSecret;
twitter.oauth = appOnly;
- return twitter;
+ return [twitter autorelease];
}
- (void)postTokenRequest:(void(^)(NSURL *url, NSString *oauthToken))successBlock oauthCallback:(NSString *)oauthCallback errorBlock:(void(^)(NSError *error))errorBlock {
--- a/README.md Sun Jul 07 21:10:54 2013 +0200
+++ b/README.md Tue Sep 10 14:15:35 2013 +0200
@@ -1,14 +1,13 @@
[Adium](http://adium.im)
========================
-[![Adiumy](http://adium.im/images/logo.png)](http://sourceforge.net/projects/adium/files/Adium_1.5.4.dmg/download?accel_key=67%3A1360794271%3Ahttp%253A//adium.im/%3Aec915758%24f8e0c76eb0905e3055634c1a54b58137212a866d&click_id=2360e5ce-762c-11e2-bea6-0200ac1d1d8a&source=accel)
+[![Adiumy](http://adium.im/images/logo.png)](https://sourceforge.net/projects/adium/files/Adium_1.5.7.dmg/download?accel_key=67%3A1373330536%3Ahttps%253A//adium.im/%3A20578a1d%246c0ac46006327d57ebeb294a94d676fc046839e9&click_id=6718b910-e830-11e2-898a-0200ac1d1d8c-1&source=accel)
-[Download Adium 1.5.4](http://sourceforge.net/projects/adium/files/Adium_1.5.4.dmg/download?accel_key=67%3A1360794271%3Ahttp%253A//adium.im/%3Aec915758%24f8e0c76eb0905e3055634c1a54b58137212a866d&click_id=2360e5ce-762c-11e2-bea6-0200ac1d1d8a&source=accel)
+[Download Adium 1.5.7](https://sourceforge.net/projects/adium/files/Adium_1.5.7.dmg/download?accel_key=67%3A1373330536%3Ahttps%253A//adium.im/%3A20578a1d%246c0ac46006327d57ebeb294a94d676fc046839e9&click_id=6718b910-e830-11e2-898a-0200ac1d1d8c-1&source=accel)
## About Adium ##
-Adium is a free and open source instant messaging application for [OS X](https://www.apple.com/osx/), written using OS X's Cocoa API, released under the [GNU GPL](http://www.gnu.org/licenses/licenses.html#GPL) and developed by [the Adium team](https://trac.adium.im/wiki/AdiumTeam).</p>
-Based on the [libpurple](https://trac.adium.im/wiki/LibPurple) protocol library, Adium can connect you to any number of messaging accounts on any combination of supported messaging services and then chat with other people using those services.
+Adium is a free and open source instant messaging application for [OS X](https://www.apple.com/osx/), written using OS X's Cocoa API, released under the [GNU GPL](http://www.gnu.org/licenses/licenses.html#GPL) and developed by [the Adium team](https://trac.adium.im/wiki/AdiumTeam). Based on the [libpurple](https://trac.adium.im/wiki/LibPurple) protocol library, Adium can connect you to any number of messaging accounts on any combination of supported messaging services and then chat with other people using those services.
## Notable Features ##
* Open Source, so everyone can see how Adium works and [help improve it](https://trac.adium.im/wiki/Development)
--- a/Resources/AboutBox.xib Sun Jul 07 21:10:54 2013 +0200
+++ b/Resources/AboutBox.xib Tue Sep 10 14:15:35 2013 +0200
@@ -2,27 +2,27 @@
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
<data>
<int key="IBDocument.SystemTarget">1060</int>
- <string key="IBDocument.SystemVersion">11C74</string>
- <string key="IBDocument.InterfaceBuilderVersion">1938</string>
- <string key="IBDocument.AppKitVersion">1138.23</string>
- <string key="IBDocument.HIToolboxVersion">567.00</string>
+ <string key="IBDocument.SystemVersion">12E55</string>
+ <string key="IBDocument.InterfaceBuilderVersion">3084</string>
+ <string key="IBDocument.AppKitVersion">1187.39</string>
+ <string key="IBDocument.HIToolboxVersion">626.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">1938</string>
+ <string key="NS.object.0">3084</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
+ <string>NSButton</string>
+ <string>NSButtonCell</string>
+ <string>NSCustomObject</string>
+ <string>NSImageCell</string>
+ <string>NSImageView</string>
+ <string>NSScrollView</string>
<string>NSScroller</string>
- <string>NSButton</string>
- <string>NSScrollView</string>
+ <string>NSTextField</string>
<string>NSTextFieldCell</string>
- <string>NSImageView</string>
- <string>NSButtonCell</string>
- <string>NSImageCell</string>
- <string>NSCustomObject</string>
<string>NSTextView</string>
<string>NSView</string>
<string>NSWindowTemplate</string>
- <string>NSTextField</string>
</array>
<array key="IBDocument.PluginDependencies">
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -72,10 +72,9 @@
<reference key="NSSuperview" ref="756675379"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="490328134"/>
- <int key="NSViewLayerContentsRedrawPolicy">2</int>
<bool key="NSEnabled">YES</bool>
<object class="NSImageCell" key="NSCell" id="834129056">
- <int key="NSCellFlags">130560</int>
+ <int key="NSCellFlags">134217728</int>
<int key="NSCellFlags2">33587200</int>
<object class="NSCustomResource" key="NSContents">
<string key="NSClassName">NSImage</string>
@@ -86,19 +85,20 @@
<int key="NSStyle">0</int>
<bool key="NSAnimates">NO</bool>
</object>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<bool key="NSEditable">YES</bool>
</object>
<object class="NSButton" id="490328134">
<reference key="NSNextResponder" ref="756675379"/>
<int key="NSvFlags">256</int>
+ <array class="NSMutableArray" key="NSSubviews"/>
<string key="NSFrame">{{20, 89}, {192, 192}}</string>
<reference key="NSSuperview" ref="756675379"/>
<reference key="NSWindow"/>
- <reference key="NSNextKeyView" ref="801464012"/>
- <int key="NSViewLayerContentsRedrawPolicy">2</int>
+ <reference key="NSNextKeyView"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="865628747">
- <int key="NSCellFlags">67239424</int>
+ <int key="NSCellFlags">67108864</int>
<int key="NSCellFlags2">0</int>
<string key="NSContents"/>
<object class="NSFont" key="NSSupport">
@@ -107,7 +107,7 @@
<int key="NSfFlags">2843</int>
</object>
<reference key="NSControlView" ref="490328134"/>
- <int key="NSButtonFlags">141836543</int>
+ <int key="NSButtonFlags">141836288</int>
<int key="NSButtonFlags2">6</int>
<object class="NSCustomResource" key="NSNormalImage">
<string key="NSClassName">NSImage</string>
@@ -122,6 +122,7 @@
<int key="NSPeriodicDelay">400</int>
<int key="NSPeriodicInterval">75</int>
</object>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
<object class="NSScrollView" id="679278724">
<reference key="NSNextResponder" ref="756675379"/>
@@ -147,11 +148,10 @@
<string>NeXT Rich Text Format v1.0 pasteboard type</string>
<string>NeXT TIFF v4.0 pasteboard type</string>
</set>
- <string key="NSFrame">{{0, -7}, {315, 14}}</string>
+ <string key="NSFrameSize">{315, 155}</string>
<reference key="NSSuperview" ref="2963749"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="108681877"/>
- <int key="NSViewLayerContentsRedrawPolicy">2</int>
<object class="NSTextContainer" key="NSTextContainer" id="63484467">
<object class="NSLayoutManager" key="NSLayoutManager">
<object class="NSTextStorage" key="NSTextStorage">
@@ -163,7 +163,7 @@
<array class="NSMutableArray" key="NSTextContainers">
<reference ref="63484467"/>
</array>
- <int key="NSLMFlags">6</int>
+ <int key="NSLMFlags">38</int>
<nil key="NSDelegate"/>
</object>
<reference key="NSTextView" ref="212523782"/>
@@ -216,7 +216,6 @@
</object>
<int key="NSTVFlags">6</int>
<string key="NSMaxSize">{353, 15000000}</string>
- <string key="NSMinize">{296, 7}</string>
<nil key="NSDelegate"/>
</object>
</array>
@@ -224,7 +223,6 @@
<reference key="NSSuperview" ref="679278724"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="212523782"/>
- <int key="NSViewLayerContentsRedrawPolicy">2</int>
<reference key="NSDocView" ref="212523782"/>
<reference key="NSBGColor" ref="837372580"/>
<object class="NSCursor" key="NSCursor">
@@ -240,6 +238,7 @@
<reference key="NSSuperview" ref="679278724"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="281700486"/>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<reference key="NSTarget" ref="679278724"/>
<string key="NSAction">_doScroller:</string>
<double key="NSPercent">0.96803653240203857</double>
@@ -251,6 +250,7 @@
<reference key="NSSuperview" ref="679278724"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="2963749"/>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">1</int>
<reference key="NSTarget" ref="679278724"/>
<string key="NSAction">_doScroller:</string>
@@ -262,11 +262,13 @@
<reference key="NSSuperview" ref="756675379"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="1022085246"/>
- <int key="NSViewLayerContentsRedrawPolicy">2</int>
<int key="NSsFlags">133120</int>
<reference key="NSVScroller" ref="1022085246"/>
<reference key="NSHScroller" ref="281700486"/>
<reference key="NSContentView" ref="2963749"/>
+ <double key="NSMinMagnification">0.25</double>
+ <double key="NSMaxMagnification">4</double>
+ <double key="NSMagnification">1</double>
</object>
<object class="NSImageView" id="108681877">
<reference key="NSNextResponder" ref="756675379"/>
@@ -283,10 +285,9 @@
<reference key="NSSuperview" ref="756675379"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="965994201"/>
- <int key="NSViewLayerContentsRedrawPolicy">2</int>
<bool key="NSEnabled">YES</bool>
<object class="NSImageCell" key="NSCell" id="18140742">
- <int key="NSCellFlags">130560</int>
+ <int key="NSCellFlags">134217728</int>
<int key="NSCellFlags2">33554432</int>
<object class="NSCustomResource" key="NSContents">
<string key="NSClassName">NSImage</string>
@@ -297,6 +298,7 @@
<int key="NSStyle">0</int>
<bool key="NSAnimates">NO</bool>
</object>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<bool key="NSEditable">YES</bool>
</object>
<object class="NSImageView" id="965994201">
@@ -314,10 +316,9 @@
<reference key="NSSuperview" ref="756675379"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="811919972"/>
- <int key="NSViewLayerContentsRedrawPolicy">2</int>
<bool key="NSEnabled">YES</bool>
<object class="NSImageCell" key="NSCell" id="1047543365">
- <int key="NSCellFlags">130560</int>
+ <int key="NSCellFlags">134217728</int>
<int key="NSCellFlags2">33554432</int>
<object class="NSCustomResource" key="NSContents">
<string key="NSClassName">NSImage</string>
@@ -328,6 +329,7 @@
<int key="NSStyle">0</int>
<bool key="NSAnimates">NO</bool>
</object>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<bool key="NSEditable">YES</bool>
</object>
<object class="NSTextField" id="839178874">
@@ -337,10 +339,9 @@
<reference key="NSSuperview" ref="756675379"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="666517339"/>
- <int key="NSViewLayerContentsRedrawPolicy">2</int>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="503979177">
- <int key="NSCellFlags">-2079195584</int>
+ <int key="NSCellFlags">-2079326144</int>
<int key="NSCellFlags2">37749760</int>
<string key="NSContents">Version</string>
<object class="NSFont" key="NSSupport">
@@ -361,18 +362,19 @@
<bytes key="NSRGB">MC41MDE5NjA3ODQzIDAuNTAxOTYwNzg0MyAwLjUwMTk2MDc4NDMAA</bytes>
</object>
</object>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
<object class="NSButton" id="666517339">
<reference key="NSNextResponder" ref="756675379"/>
<int key="NSvFlags">256</int>
+ <array class="NSMutableArray" key="NSSubviews"/>
<string key="NSFrame">{{232, 253}, {308, 15}}</string>
<reference key="NSSuperview" ref="756675379"/>
<reference key="NSWindow"/>
- <reference key="NSNextKeyView" ref="679278724"/>
- <int key="NSViewLayerContentsRedrawPolicy">2</int>
+ <reference key="NSNextKeyView"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="361376577">
- <int key="NSCellFlags">67239424</int>
+ <int key="NSCellFlags">67108864</int>
<int key="NSCellFlags2">0</int>
<string key="NSContents"/>
<object class="NSFont" key="NSSupport" id="76241347">
@@ -381,7 +383,7 @@
<int key="NSfFlags">1044</int>
</object>
<reference key="NSControlView" ref="666517339"/>
- <int key="NSButtonFlags">-2042838785</int>
+ <int key="NSButtonFlags">-2042839040</int>
<int key="NSButtonFlags2">6</int>
<string key="NSAlternateContents"/>
<object class="NSMutableString" key="NSKeyEquivalent">
@@ -390,23 +392,24 @@
<int key="NSPeriodicDelay">200</int>
<int key="NSPeriodicInterval">25</int>
</object>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
<object class="NSButton" id="329998257">
<reference key="NSNextResponder" ref="756675379"/>
<int key="NSvFlags">256</int>
+ <array class="NSMutableArray" key="NSSubviews"/>
<string key="NSFrame">{{229, 8}, {154, 32}}</string>
<reference key="NSSuperview" ref="756675379"/>
<reference key="NSWindow"/>
- <reference key="NSNextKeyView" ref="609197835"/>
- <int key="NSViewLayerContentsRedrawPolicy">2</int>
+ <reference key="NSNextKeyView"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="929112214">
- <int key="NSCellFlags">67239424</int>
+ <int key="NSCellFlags">67108864</int>
<int key="NSCellFlags2">134217728</int>
<string key="NSContents">Adium Homepage</string>
<reference key="NSSupport" ref="76241347"/>
<reference key="NSControlView" ref="329998257"/>
- <int key="NSButtonFlags">-2038284033</int>
+ <int key="NSButtonFlags">-2038284288</int>
<int key="NSButtonFlags2">1</int>
<reference key="NSAlternateImage" ref="76241347"/>
<string key="NSAlternateContents"/>
@@ -416,23 +419,24 @@
<int key="NSPeriodicDelay">200</int>
<int key="NSPeriodicInterval">25</int>
</object>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
<object class="NSButton" id="609197835">
<reference key="NSNextResponder" ref="756675379"/>
<int key="NSvFlags">256</int>
+ <array class="NSMutableArray" key="NSSubviews"/>
<string key="NSFrame">{{392, 8}, {154, 32}}</string>
<reference key="NSSuperview" ref="756675379"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView"/>
- <int key="NSViewLayerContentsRedrawPolicy">2</int>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="716501959">
- <int key="NSCellFlags">67239424</int>
+ <int key="NSCellFlags">67108864</int>
<int key="NSCellFlags2">134217728</int>
<string key="NSContents">License</string>
<reference key="NSSupport" ref="76241347"/>
<reference key="NSControlView" ref="609197835"/>
- <int key="NSButtonFlags">-2038284033</int>
+ <int key="NSButtonFlags">-2038284288</int>
<int key="NSButtonFlags2">1</int>
<object class="NSFont" key="NSAlternateImage">
<string key="NSName">LucidaGrande</string>
@@ -446,6 +450,7 @@
<int key="NSPeriodicDelay">200</int>
<int key="NSPeriodicInterval">25</int>
</object>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
<object class="NSTextField" id="801464012">
<reference key="NSNextResponder" ref="756675379"/>
@@ -454,10 +459,9 @@
<reference key="NSSuperview" ref="756675379"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="839178874"/>
- <int key="NSViewLayerContentsRedrawPolicy">2</int>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="918644134">
- <int key="NSCellFlags">68288064</int>
+ <int key="NSCellFlags">68157504</int>
<int key="NSCellFlags2">272630784</int>
<string key="NSContents">Adium</string>
<object class="NSFont" key="NSSupport">
@@ -475,6 +479,7 @@
<reference key="NSColor" ref="1014407744"/>
</object>
</object>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
<object class="NSTextField" id="811919972">
<reference key="NSNextResponder" ref="756675379"/>
@@ -483,12 +488,11 @@
<reference key="NSSuperview" ref="756675379"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="329998257"/>
- <int key="NSViewLayerContentsRedrawPolicy">2</int>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="538272733">
- <int key="NSCellFlags">-2079195584</int>
+ <int key="NSCellFlags">-2079326144</int>
<int key="NSCellFlags2">37749760</int>
- <string key="NSContents">© 2001-2012 The Adium Team</string>
+ <string key="NSContents">© 2001-2013 The Adium Team</string>
<object class="NSFont" key="NSSupport">
<string key="NSName">LucidaGrande</string>
<double key="NSSize">11</double>
@@ -502,6 +506,7 @@
<bytes key="NSRGB">MC41MDE5NjA3ODQzIDAuNTAxOTYwNzg0MyAwLjUwMTk2MDc4NDMAA</bytes>
</object>
</object>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
</array>
<string key="NSFrameSize">{560, 320}</string>
@@ -509,7 +514,6 @@
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="436292106"/>
<bool key="NSViewIsLayerTreeHost">YES</bool>
- <int key="NSViewLayerContentsRedrawPolicy">2</int>
</object>
<string key="NSScreenRect">{{0, 0}, {1680, 1028}}</string>
<string key="NSMinSize">{560, 342}</string>
@@ -567,9 +571,9 @@
</object>
<dictionary key="NSAttributes">
<object class="NSFont" key="NSFont">
- <string key="NSName">Monaco</string>
+ <string key="NSName">Menlo-Regular</string>
<double key="NSSize">10</double>
- <int key="NSfFlags">530</int>
+ <int key="NSfFlags">16</int>
</object>
<object class="NSMutableParagraphStyle" key="NSParagraphStyle">
<nil key="NSTabStops"/>
@@ -580,7 +584,7 @@
<array class="NSMutableArray" key="NSTextContainers">
<reference ref="628379985"/>
</array>
- <int key="NSLMFlags">6</int>
+ <int key="NSLMFlags">38</int>
<nil key="NSDelegate"/>
</object>
<reference key="NSTextView" ref="613970551"/>
@@ -608,7 +612,6 @@
</object>
<int key="NSTVFlags">6</int>
<string key="NSMaxSize">{512, 10000000}</string>
- <string key="NSMinize">{473, 374}</string>
<nil key="NSDelegate"/>
</object>
</array>
@@ -649,6 +652,7 @@
<string key="NSFrame">{{474, 1}, {15, 374}}</string>
<reference key="NSSuperview" ref="384769830"/>
<reference key="NSNextKeyView" ref="83966184"/>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<reference key="NSTarget" ref="384769830"/>
<string key="NSAction">_doScroller:</string>
<double key="NSPercent">0.077224858105182648</double>
@@ -659,6 +663,7 @@
<string key="NSFrame">{{-100, -100}, {87, 18}}</string>
<reference key="NSSuperview" ref="384769830"/>
<reference key="NSNextKeyView" ref="511449369"/>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">1</int>
<reference key="NSTarget" ref="384769830"/>
<string key="NSAction">_doScroller:</string>
@@ -673,6 +678,9 @@
<reference key="NSVScroller" ref="957819625"/>
<reference key="NSHScroller" ref="25810865"/>
<reference key="NSContentView" ref="511449369"/>
+ <double key="NSMinMagnification">0.25</double>
+ <double key="NSMaxMagnification">4</double>
+ <double key="NSMagnification">1</double>
</object>
<object class="NSButton" id="83966184">
<reference key="NSNextResponder" ref="346846082"/>
@@ -681,12 +689,12 @@
<reference key="NSSuperview" ref="346846082"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="302040499">
- <int key="NSCellFlags">67239424</int>
+ <int key="NSCellFlags">67108864</int>
<int key="NSCellFlags2">134217728</int>
<string key="NSContents">OK</string>
<reference key="NSSupport" ref="76241347"/>
<reference key="NSControlView" ref="83966184"/>
- <int key="NSButtonFlags">-2038284033</int>
+ <int key="NSButtonFlags">-2038284288</int>
<int key="NSButtonFlags2">1</int>
<reference key="NSAlternateImage" ref="76241347"/>
<string key="NSAlternateContents"/>
@@ -694,6 +702,7 @@
<int key="NSPeriodicDelay">200</int>
<int key="NSPeriodicInterval">25</int>
</object>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
</array>
<string key="NSFrameSize">{530, 456}</string>
@@ -1320,6 +1329,24 @@
<string key="minorKey">./Classes/LNAboutBoxController.h</string>
</object>
</object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSObject</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">selectServiceType:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">selectServiceType:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">selectServiceType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">./Classes/NSObject.h</string>
+ </object>
+ </object>
</array>
</object>
<int key="IBDocument.localizationMode">0</int>
@@ -1328,10 +1355,6 @@
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
<real value="1060" key="NS.object.0"/>
</object>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <real value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<real value="3200" key="NS.object.0"/>
--- a/Source/AdiumSetupWizard.m Sun Jul 07 21:10:54 2013 +0200
+++ b/Source/AdiumSetupWizard.m Tue Sep 10 14:15:35 2013 +0200
@@ -273,7 +273,7 @@
[[textView_addAccountMessage enclosingScrollView] setDrawsBackground:NO];
NSAttributedString *accountMessage = [AIHTMLDecoder decodeHTML:
- AILocalizedString(@"<HTML>To chat with your friends, family, and coworkers, you must have an instant messaging account on the same service they do. Choose a service, name, and password below; if you don't have an account yet, click <A HREF=\"http://trac.adium.im/wiki/CreatingAnAccount#Sigingupforanaccount\">here</A> for more information.\n\nAdium supports as many accounts as you want to add; you can always add more in the Accounts pane of the Adium Preferences.</HTML>", nil)
+ AILocalizedString(@"<HTML>To chat with your friends, family, and coworkers, you must have an instant messaging account on the same service they do. Choose a service, name, and password below; if you don't have an account yet, click <A HREF=\"https://adium.im/help/pgs/Accounts-CreatingAccounts.html\">here</A> for more information.\n\nAdium supports as many accounts as you want to add; you can always add more in the &#34;Accounts&#34; pane of the Adium Preferences.</HTML>", nil)
withDefaultAttributes:[[textView_addAccountMessage textStorage] attributesAtIndex:0
effectiveRange:NULL]];
[[textView_addAccountMessage textStorage] setAttributedString:accountMessage];