adium-1.4 2600:e8d82ee930a5: Add -[NSApplication isOnSnowLeopard...

commits at adium.im commits at adium.im
Sun Aug 30 14:39:56 UTC 2009


details:	http://hg.adium.im/adium-1.4/rev/e8d82ee930a5
revision:	2600:e8d82ee930a5
author:		Zachary West <zacw at adium.im>
date:		Sun Aug 30 10:46:57 2009 -0400

Add -[NSApplication isOnSnowLeopardOrBetter] so we can avoid crashing when calling these methods.

diffs (66 lines):

diff -r 236abfc3797e -r e8d82ee930a5 Frameworks/AIUtilities Framework/Source/AIApplicationAdditions.h
--- a/Frameworks/AIUtilities Framework/Source/AIApplicationAdditions.h	Sat Aug 29 19:28:57 2009 -0400
+++ b/Frameworks/AIUtilities Framework/Source/AIApplicationAdditions.h	Sun Aug 30 10:46:57 2009 -0400
@@ -9,5 +9,6 @@
 @interface NSApplication (AIApplicationAdditions)
 
 - (NSString *)applicationVersion;
+- (BOOL)isOnSnowLeopardOrBetter;
 
 @end
diff -r 236abfc3797e -r e8d82ee930a5 Frameworks/AIUtilities Framework/Source/AIApplicationAdditions.m
--- a/Frameworks/AIUtilities Framework/Source/AIApplicationAdditions.m	Sat Aug 29 19:28:57 2009 -0400
+++ b/Frameworks/AIUtilities Framework/Source/AIApplicationAdditions.m	Sun Aug 30 10:46:57 2009 -0400
@@ -14,4 +14,15 @@
 	return [[[NSBundle mainBundle] infoDictionary] objectForKey:(NSString *)kCFBundleVersionKey];
 }
 
+//Make sure the version number defines exist; when compiling in 10.5, NSAppKitVersionNumber10_5 isn't defined 
+#ifndef NSAppKitVersionNumber10_5
+#define NSAppKitVersionNumber10_5 949
+#endif 
+
+- (BOOL)isOnSnowLeopardOrBetter
+{
+	return (floor(NSAppKitVersionNumber) > NSAppKitVersionNumber10_5);
+}
+
+
 @end
diff -r 236abfc3797e -r e8d82ee930a5 Frameworks/Adium Framework/Source/AIMessageEntryTextView.m
--- a/Frameworks/Adium Framework/Source/AIMessageEntryTextView.m	Sat Aug 29 19:28:57 2009 -0400
+++ b/Frameworks/Adium Framework/Source/AIMessageEntryTextView.m	Sun Aug 30 10:46:57 2009 -0400
@@ -410,20 +410,22 @@
 			[self setContinuousSpellCheckingEnabled:[[prefDict objectForKey:KEY_SPELL_CHECKING] boolValue]];
 		}
 		
-		if (!key || [key isEqualToString:KEY_SUBSTITUTION_DASH]) {
-			[self setAutomaticDashSubstitutionEnabled:[[prefDict objectForKey:KEY_SUBSTITUTION_DASH] boolValue]];
-		}
+		if ([NSApp isOnSnowLeopardOrBetter]) {
+			if (!key || [key isEqualToString:KEY_SUBSTITUTION_DASH]) {
+				[self setAutomaticDashSubstitutionEnabled:[[prefDict objectForKey:KEY_SUBSTITUTION_DASH] boolValue]];
+			}
 		
-		if (!key || [key isEqualToString:KEY_SUBSTITUTION_DATA_DETECTORS]) {
-			[self setAutomaticDataDetectionEnabled:[[prefDict objectForKey:KEY_SUBSTITUTION_DATA_DETECTORS] boolValue]];
-		}
+			if (!key || [key isEqualToString:KEY_SUBSTITUTION_DATA_DETECTORS]) {
+				[self setAutomaticDataDetectionEnabled:[[prefDict objectForKey:KEY_SUBSTITUTION_DATA_DETECTORS] boolValue]];
+			}
 		
-		if (!key || [key isEqualToString:KEY_SUBSTITUTION_REPLACEMENT]) {
-			[self setAutomaticTextReplacementEnabled:[[prefDict objectForKey:KEY_SUBSTITUTION_REPLACEMENT] boolValue]];
-		}
+			if (!key || [key isEqualToString:KEY_SUBSTITUTION_REPLACEMENT]) {
+				[self setAutomaticTextReplacementEnabled:[[prefDict objectForKey:KEY_SUBSTITUTION_REPLACEMENT] boolValue]];
+			}
 		
-		if (!key || [key isEqualToString:KEY_SUBSTITUTION_SPELLING]) {
-			[self setAutomaticSpellingCorrectionEnabled:[[prefDict objectForKey:KEY_SUBSTITUTION_SPELLING] boolValue]];
+			if (!key || [key isEqualToString:KEY_SUBSTITUTION_SPELLING]) {
+				[self setAutomaticSpellingCorrectionEnabled:[[prefDict objectForKey:KEY_SUBSTITUTION_SPELLING] boolValue]];
+			}
 		}
 		
 		if (!key || [key isEqualToString:KEY_SUBSTITUTION_COPY_PASTE]) {




More information about the commits mailing list