Changeset 3763

Show
Ignore:
Timestamp:
10/15/07 09:32:28 (1 year ago)
Author:
timothy
Message:

Rip out 10.3.9 support and worarounds. Mac OS 10.4 is now required.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/Additions/NSAttributedStringAdditions.m

    r3755 r3763  
    105105        NSParameterAssert( fragment != nil ); 
    106106 
    107         NSMutableDictionary *options = [[NSMutableDictionary allocWithZone:nil] initWithObjectsAndKeys:[NSNumber numberWithInt:1], @"UseWebKit", [NSNumber numberWithUnsignedInt:NSUTF8StringEncoding], @"CharacterEncoding", nil]; 
    108         if( url ) [options setObject:url forKey:@"BaseURL"]; 
     107        NSMutableDictionary *options = [[NSMutableDictionary allocWithZone:nil] initWithObjectsAndKeys:[NSNumber numberWithUnsignedInt:NSUTF8StringEncoding], NSCharacterEncodingDocumentOption, nil]; 
     108        if( url ) [options setObject:url forKey:NSBaseURLDocumentOption]; 
    109109 
    110110        // we suround the fragment in the #01FE02 green color so we can later key it out and strip it 
  • trunk/Basic.pch

    r3755 r3763  
    11#ifndef MAC_OS_X_VERSION_10_5 
    22#define MAC_OS_X_VERSION_10_5 1050 
    3 #endif 
    4  
    5 #ifndef NSAppKitVersionNumber10_3 
    6 #define NSAppKitVersionNumber10_3 743 
    73#endif 
    84 
  • trunk/Chat Core/MVDirectClientConnection.m

    r3755 r3763  
    349349        [_threadWaitLock unlockWithCondition:1]; 
    350350 
    351         if( [pool respondsToSelector:@selector( drain )] ) 
    352                 [pool drain]; 
    353         else [pool release]; 
     351        [pool drain]; 
    354352        pool = nil; 
    355353 
     
    366364                [timeout release]; 
    367365 
    368                 if( [pool respondsToSelector:@selector( drain )] ) 
    369                         [pool drain]; 
    370                 else [pool release]; 
     366                [pool drain]; 
    371367        } 
    372368 
     
    382378        [self release]; 
    383379 
    384         if( [pool respondsToSelector:@selector( drain )] ) 
    385                 [pool drain]; 
    386         else [pool release]; 
     380        [pool drain]; 
    387381} 
    388382@end 
  • trunk/Chat Core/MVICBChatConnection.m

    r3755 r3763  
    409409        [_threadWaitLock unlockWithCondition:1]; 
    410410 
    411         if( [pool respondsToSelector:@selector( drain )] ) 
    412                 [pool drain]; 
    413         else [pool release]; 
     411        [pool drain]; 
    414412        pool = nil; 
    415413 
     
    421419            runMode:NSDefaultRunLoopMode 
    422420            beforeDate:[NSDate dateWithTimeIntervalSinceNow:5.]]; 
    423                 if( [pool respondsToSelector:@selector( drain )] ) 
    424                         [pool drain]; 
    425                 else [pool release]; 
     421                [pool drain]; 
    426422        } 
    427423 
     
    437433                _connectionThread = nil; 
    438434 
    439         if( [pool respondsToSelector:@selector( drain )] ) 
    440                 [pool drain]; 
    441         else [pool release]; 
     435        [pool drain]; 
    442436} 
    443437 
  • trunk/Chat Core/MVIRCChatConnection.m

    r3755 r3763  
    565565        [_threadWaitLock unlockWithCondition:1]; 
    566566 
    567         if( [pool respondsToSelector:@selector( drain )] ) 
    568                 [pool drain]; 
    569         else [pool release]; 
     567        [pool drain]; 
    570568        pool = nil; 
    571569 
     
    573571                pool = [[NSAutoreleasePool allocWithZone:nil] init]; 
    574572                [[NSRunLoop currentRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate dateWithTimeIntervalSinceNow:5.]]; 
    575                 if( [pool respondsToSelector:@selector( drain )] ) 
    576                         [pool drain]; 
    577                 else [pool release]; 
     573                [pool drain]; 
    578574        } 
    579575 
     
    586582                _connectionThread = nil; 
    587583 
    588         if( [pool respondsToSelector:@selector( drain )] ) 
    589                 [pool drain]; 
    590         else [pool release]; 
     584        [pool drain]; 
    591585} 
    592586 
     
    649643 
    650644                NSMutableDictionary *settings = [[NSMutableDictionary allocWithZone:nil] init]; 
    651                 [settings setObject:[NSNumber numberWithBool:YES] forKey:@"kCFStreamSSLAllowsAnyRoot"]; 
    652  
    653                 CFReadStreamSetProperty( [sock getCFReadStream], CFSTR("kCFStreamPropertySSLSettings"), (CFDictionaryRef) settings ); 
    654                 CFWriteStreamSetProperty( [sock getCFWriteStream], CFSTR("kCFStreamPropertySSLSettings"), (CFDictionaryRef) settings ); 
     645                [settings setObject:[NSNumber numberWithBool:YES] forKey:(NSString *)kCFStreamSSLAllowsAnyRoot]; 
     646 
     647                CFReadStreamSetProperty( [sock getCFReadStream], kCFStreamPropertySSLSettings, (CFDictionaryRef) settings ); 
     648                CFWriteStreamSetProperty( [sock getCFWriteStream], kCFStreamPropertySSLSettings, (CFDictionaryRef) settings ); 
    655649        } 
    656650 
     
    25272521                        } 
    25282522 
    2529                         if( [pool respondsToSelector:@selector( drain )] ) 
    2530                                 [pool drain]; 
    2531                         [pool release]; 
     2523                        [pool drain]; 
    25322524                } 
    25332525        } 
  • trunk/Chat Core/MVSILCChatConnection.m

    r3755 r3763  
    14521452                [[NSThread currentThread] setName:[[self url] absoluteString]]; 
    14531453 
    1454         if( [pool respondsToSelector:@selector( drain )] ) 
    1455                 [pool drain]; 
    1456         else [pool release]; 
     1454        [pool drain]; 
    14571455        pool = nil; 
    14581456 
     
    14601458                pool = [[NSAutoreleasePool allocWithZone:nil] init]; 
    14611459                silc_schedule_one( _silcClient -> schedule, -1 ); 
    1462                 if( [pool respondsToSelector:@selector( drain )] ) 
    1463                         [pool drain]; 
    1464                 else [pool release]; 
     1460                [pool drain]; 
    14651461        } 
    14661462} 
  • trunk/Colloquy.pch

    r3757 r3763  
    11#ifndef MAC_OS_X_VERSION_10_5 
    22#define MAC_OS_X_VERSION_10_5 1050 
    3 #endif 
    4  
    5 #ifndef NSAppKitVersionNumber10_3 
    6 #define NSAppKitVersionNumber10_3 743 
    73#endif 
    84 
  • trunk/Colloquy.xcodeproj/project.pbxproj

    r3762 r3763  
    30673067                                        "-lxslt", 
    30683068                                        "-lexslt", 
    3069                                         "-undefined", 
    3070                                         dynamic_lookup, 
    30713069                                ); 
    30723070                                PRODUCT_NAME = Colloquy; 
     
    30963094                                        "-lxslt", 
    30973095                                        "-lexslt", 
    3098                                         "-undefined", 
    3099                                         dynamic_lookup, 
    31003096                                ); 
    31013097                                PRODUCT_NAME = Colloquy; 
     
    31853181                                        "-lxslt", 
    31863182                                        "-lexslt", 
    3187                                         "-undefined", 
    3188                                         dynamic_lookup, 
    31893183                                ); 
    31903184                                PRODUCT_NAME = Colloquy; 
  • trunk/Controllers/JVChatRoomBrowser.m

    r3460 r3763  
    105105        [self _refreshResults:nil]; 
    106106 
    107         if( [[self window] respondsToSelector:@selector( recalculateKeyViewLoop )] ) 
    108                 [[self window] recalculateKeyViewLoop]; 
     107        [[self window] recalculateKeyViewLoop]; 
    109108 
    110109        if( [connectionPopup indexOfSelectedItem] != -1 ) 
     
    220219        [self _refreshResults:nil]; 
    221220 
    222         if( [[self window] respondsToSelector:@selector( recalculateKeyViewLoop )] ) 
    223                 [[self window] recalculateKeyViewLoop]; 
     221        [[self window] recalculateKeyViewLoop]; 
    224222} 
    225223 
  • trunk/Controllers/JVPreferencesController.m

    r3418 r3763  
    2929        if( [_preferencesPanel respondsToSelector:@selector( _setContentHasShadow: )] ) 
    3030                [_preferencesPanel _setContentHasShadow:NO]; // this is new in Tiger 
    31         if( [_preferencesPanel respondsToSelector:@selector( setShowsToolbarButton: )] ) 
    32                 [_preferencesPanel setShowsToolbarButton:NO]; 
     31        [_preferencesPanel setShowsToolbarButton:NO]; 
    3332} 
    3433 
     
    3837        if( [_preferencesPanel respondsToSelector:@selector( _setContentHasShadow: )] ) 
    3938                [_preferencesPanel _setContentHasShadow:NO]; // this is new in Tiger 
    40         if( [_preferencesPanel respondsToSelector:@selector( setShowsToolbarButton: )] ) 
    41                 [_preferencesPanel setShowsToolbarButton:NO]; 
     39        [_preferencesPanel setShowsToolbarButton:NO]; 
    4240} 
    4341@end 
  • trunk/Controllers/MVApplicationController.m

    r3757 r3763  
    309309                NSAppleEventManager *sam = [NSAppleEventManager sharedAppleEventManager]; 
    310310                NSAppleEventDescriptor *lastEvent = [sam currentAppleEvent]; 
    311                 searchString = [[lastEvent descriptorForKeyword:'stxt'] stringValue]; 
     311                searchString = [[lastEvent descriptorForKeyword:keyAESearchText] stringValue]; 
    312312 
    313313                JVChatTranscriptPanel *transcript = [[JVChatController defaultController] chatViewControllerForTranscript:filename]; 
  • trunk/Controllers/MVConnectionsController.m

    r3753 r3763  
    335335        [openConnection setFrame:newWindowFrame display:YES animate:YES]; 
    336336        if( [sender state] ) [detailsTabView selectTabViewItemAtIndex:1]; 
    337         if( [openConnection respondsToSelector:@selector( recalculateKeyViewLoop )] ) 
    338                 [openConnection recalculateKeyViewLoop]; 
     337        [openConnection recalculateKeyViewLoop]; 
    339338} 
    340339 
  • trunk/Controllers/MVCrashCatcher.m

    r3617 r3763  
    3434 
    3535- (void) awakeFromNib { 
    36         NSString *logContent = nil; 
    37         if( floor( NSAppKitVersionNumber ) <= NSAppKitVersionNumber10_3 ) // test for 10.3 
    38                 logContent = [NSString performSelector:@selector( stringWithContentsOfFile: ) withObject:logPath]; 
    39         else logContent = [NSString stringWithContentsOfFile:logPath encoding:NSUTF8StringEncoding error:NULL]; 
     36        NSString *logContent = [NSString stringWithContentsOfFile:logPath encoding:NSUTF8StringEncoding error:NULL]; 
    4037 
    4138        // get only the last crash trace, there is hardly ever more than one since we delete the file. it can still happen 
  • trunk/Inspectors/JVChatRoomInspector.m

    r3755 r3763  
    8686        [nameField setStringValue:[_room title]]; 
    8787 
    88         if( floor( NSAppKitVersionNumber ) <= NSAppKitVersionNumber10_3 ) { 
    89                 [saveTopic setBezelStyle:NSShadowlessSquareBezelStyle]; 
    90                 [resetTopic setBezelStyle:NSShadowlessSquareBezelStyle]; 
    91  
    92                 NSString *dateFormat = [[NSUserDefaults standardUserDefaults] objectForKey:NSShortTimeDateFormatString]; 
    93                 NSDictionary *locale = [[NSUserDefaults standardUserDefaults] dictionaryRepresentation]; 
    94                 if( [[_room target] isJoined] ) 
    95                         [infoField setObjectValue:[NSString stringWithFormat:NSLocalizedString( @"Joined: %@", "chat room joined date label" ), [[[_room target] dateJoined] descriptionWithCalendarFormat:dateFormat timeZone:nil locale:locale]]]; 
    96                 else [infoField setObjectValue:[NSString stringWithFormat:NSLocalizedString( @"Parted: %@", "chat room parted date label" ), [[[_room target] dateParted] descriptionWithCalendarFormat:dateFormat timeZone:nil locale:locale]]]; 
    97         } else { 
    98                 NSDateFormatter *formatter = [[[NSDateFormatter alloc] init] autorelease]; 
    99                 [formatter setFormatterBehavior:1040]; 
    100                 [formatter setDateStyle:kCFDateFormatterShortStyle]; 
    101                 [formatter setTimeStyle:kCFDateFormatterShortStyle]; 
    102  
    103                 if( [[_room target] isJoined] ) 
    104                         [infoField setObjectValue:[NSString stringWithFormat:NSLocalizedString( @"Joined: %@", "chat room joined date label" ), [formatter stringFromDate:[[_room target] dateJoined]]]]; 
    105                 else [infoField setObjectValue:[NSString stringWithFormat:NSLocalizedString( @"Parted: %@", "chat room parted date label" ), [formatter stringFromDate:[[_room target] dateParted]]]]; 
    106         } 
     88        NSDateFormatter *formatter = [[[NSDateFormatter alloc] init] autorelease]; 
     89        [formatter setFormatterBehavior:NSDateFormatterBehavior10_4]; 
     90        [formatter setDateStyle:NSDateFormatterShortStyle]; 
     91        [formatter setTimeStyle:NSDateFormatterShortStyle]; 
     92 
     93        if( [[_room target] isJoined] ) 
     94                [infoField setObjectValue:[NSString stringWithFormat:NSLocalizedString( @"Joined: %@", "chat room joined date label" ), [formatter stringFromDate:[[_room target] dateJoined]]]]; 
     95        else [infoField setObjectValue:[NSString stringWithFormat:NSLocalizedString( @"Parted: %@", "chat room parted date label" ), [formatter stringFromDate:[[_room target] dateParted]]]]; 
    10796 
    10897        [encodingSelection setMenu:[_room _encodingMenu]]; 
     
    260249        if ( [[column identifier] isEqualToString:@"author"] ) { 
    261250                MVChatUser *user = [_latestBanList objectAtIndex:row]; 
    262                 if( [user respondsToSelector:@selector( attributeForKey: )] ) { 
     251                if( [user respondsToSelector:@selector( attributeForKey: )] ) 
    263252                        return [user attributeForKey:MVChatUserBanServerAttribute]; 
    264                 } 
    265253                return nil; 
    266254        } 
     
    273261        NSString *dateString = nil; 
    274262 
    275         if( floor( NSAppKitVersionNumber ) <= NSAppKitVersionNumber10_3 ) { 
    276                 NSString *dateFormat = [[NSUserDefaults standardUserDefaults] objectForKey:NSShortTimeDateFormatString]; 
    277                 NSDictionary *locale = [[NSUserDefaults standardUserDefaults] dictionaryRepresentation]; 
    278                 dateString = [date descriptionWithCalendarFormat:dateFormat timeZone:nil locale:locale]; 
    279         } else { 
    280                 NSDateFormatter *formatter = [[[NSDateFormatter alloc] init] autorelease]; 
    281                 [formatter setFormatterBehavior:1040]; 
    282                 [formatter setDateStyle:kCFDateFormatterShortStyle]; 
    283                 [formatter setTimeStyle:kCFDateFormatterShortStyle]; 
    284                 dateString = [formatter stringFromDate:date]; 
    285         } 
     263        NSDateFormatter *formatter = [[[NSDateFormatter alloc] init] autorelease]; 
     264        [formatter setFormatterBehavior:NSDateFormatterBehavior10_4]; 
     265        [formatter setDateStyle:NSDateFormatterShortStyle]; 
     266        [formatter setTimeStyle:NSDateFormatterShortStyle]; 
     267        dateString = [formatter stringFromDate:date]; 
    286268 
    287269        NSString *server = [user attributeForKey:MVChatUserBanServerAttribute]; 
  • trunk/Models/JVEmoticonSet.m

    r3615 r3763  
    244244 
    245245- (NSString *) contentsOfStyleSheet { 
    246         NSString *contents = nil; 
    247         if( floor( NSAppKitVersionNumber ) <= NSAppKitVersionNumber10_3 ) // test for 10.3 
    248                 contents = [NSString performSelector:@selector( stringWithContentsOfURL: ) withObject:[self styleSheetLocation]]; 
    249         else contents = [NSString stringWithContentsOfURL:[self styleSheetLocation] encoding:NSUTF8StringEncoding error:NULL]; 
     246        NSString *contents = [NSString stringWithContentsOfURL:[self styleSheetLocation] encoding:NSUTF8StringEncoding error:NULL]; 
    250247        return ( contents ? contents : @"" ); 
    251248} 
  • trunk/Models/JVSQLChatTranscript.m

    r3638 r3763  
    611611 
    612612- (BOOL) _initializeDatabase { 
    613         NSString *setup = nil; 
    614         if( floor( NSAppKitVersionNumber ) <= NSAppKitVersionNumber10_3 ) // test for 10.3 
    615                 setup = [NSString performSelector:@selector( stringWithContentsOfFile: ) withObject:[[NSBundle mainBundle] pathForResource:@"transcriptSchema" ofType:@"sql"]]; 
    616         else setup = [NSString stringWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"transcriptSchema" ofType:@"sql"] encoding:NSUTF8StringEncoding error:NULL]; 
     613        NSString *setup = [NSString stringWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"transcriptSchema" ofType:@"sql"] encoding:NSUTF8StringEncoding error:NULL]; 
    617614 
    618615        @synchronized( self ) { 
  • trunk/Models/JVStyle.m

    r3695 r3763  
    494494 
    495495- (NSString *) contentsOfMainStyleSheet { 
    496         NSString *contents = nil; 
    497         if( floor( NSAppKitVersionNumber ) <= NSAppKitVersionNumber10_3 ) // test for 10.3 
    498                 contents = [NSString performSelector:@selector( stringWithContentsOfURL: ) withObject:[self mainStyleSheetLocation]]; 
    499         else contents = [NSString stringWithContentsOfURL:[self mainStyleSheetLocation] encoding:NSUTF8StringEncoding error:NULL]; 
     496        NSString *contents = [NSString stringWithContentsOfURL:[self mainStyleSheetLocation] encoding:NSUTF8StringEncoding error:NULL]; 
    500497        return ( contents ? contents : @"" ); 
    501498} 
    502499 
    503500- (NSString *) contentsOfVariantStyleSheetWithName:(NSString *) name { 
    504         NSString *contents = nil; 
    505         if( floor( NSAppKitVersionNumber ) <= NSAppKitVersionNumber10_3 ) // test for 10.3 
    506                 contents = [NSString performSelector:@selector( stringWithContentsOfURL: ) withObject:[self variantStyleSheetLocationWithName:name]]; 
    507         else contents = [NSString stringWithContentsOfURL:[self variantStyleSheetLocationWithName:name] encoding:NSUTF8StringEncoding error:NULL]; 
     501        NSString *contents = [NSString stringWithContentsOfURL:[self variantStyleSheetLocationWithName:name] encoding:NSUTF8StringEncoding error:NULL]; 
    508502        return ( contents ? contents : @"" ); 
    509503} 
     
    513507        if( ! url ) return @""; 
    514508 
    515         NSString *contents = nil; 
    516         if( floor( NSAppKitVersionNumber ) <= NSAppKitVersionNumber10_3 ) // test for 10.3 
    517                 contents = [NSString performSelector:@selector( stringWithContentsOfURL: ) withObject:url]; 
    518         else contents = [NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:NULL]; 
     509        NSString *contents = [NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:NULL]; 
    519510 
    520511        NSURL *resources = [NSURL fileURLWithPath:[[NSBundle mainBundle] resourcePath]]; 
  • trunk/Panels/JVChatRoomMember.m

    r3619 r3763  
    377377                item = [[[NSMenuItem alloc] initWithTitle:NSLocalizedString( [NSString stringWithUTF8String:"Kick From Room..."], "kick from room (customized) contextual menu - admin only" ) action:@selector( customKick: ) keyEquivalent:@""] autorelease]; 
    378378                [item setKeyEquivalentModifierMask:NSAlternateKeyMask]; 
    379                 if( [item respondsToSelector:@selector( setAlternate: )] ) 
    380                         [item setAlternate:YES]; 
     379                [item setAlternate:YES]; 
    381380                [item setTarget:self]; 
    382381                [menu addItem:item]; 
     
    389388                        item = [[[NSMenuItem alloc] initWithTitle:NSLocalizedString( [NSString stringWithUTF8String:"Ban From Room..."], "ban from room (customized) contextual menu - admin only" ) action:@selector( customBan: ) keyEquivalent:@""] autorelease]; 
    390389                        [item setKeyEquivalentModifierMask:NSAlternateKeyMask]; 
    391                         if( [item respondsToSelector:@selector( setAlternate: )] ) 
    392                                 [item setAlternate:YES]; 
     390                        [item setAlternate:YES]; 
    393391                        [item setTarget:self]; 
    394392                        [menu addItem:item]; 
     
    400398                        item = [[[NSMenuItem alloc] initWithTitle:NSLocalizedString( [NSString stringWithUTF8String:"Kick & Ban From Room..."], "kickban from room (customized) contextual menu - admin only" ) action:@selector( customKickban: ) keyEquivalent:@""] autorelease]; 
    401399                        [item setKeyEquivalentModifierMask:NSAlternateKeyMask]; 
    402                         if( [item respondsToSelector:@selector( setAlternate: )] ) 
    403                                 [item setAlternate:YES]; 
     400                        [item setAlternate:YES]; 
    404401                        [item setTarget:self]; 
    405402                        [menu addItem:item]; 
     
    593590        [banWindow makeFirstResponder:firstField]; 
    594591 
    595         if( [secondTitle respondsToSelector:@selector(setHidden:)] ) { 
    596                 [secondTitle setHidden:YES]; 
    597                 [secondField setHidden:YES]; 
    598         } else { 
    599                 NSRect frame = [secondTitle frame]; 
    600                 frame.origin.x = 0. - frame.size.width - 10.; 
    601                 [secondTitle setFrame:frame]; 
    602                 frame = [secondField frame]; 
    603                 frame.origin.x = 0. - frame.size.width - 10.; 
    604                 [secondField setFrame:frame]; 
    605         } 
     592        [secondTitle setHidden:YES]; 
     593        [secondField setHidden:YES]; 
    606594 
    607595        NSRect frame = [banWindow frame]; 
     
    629617        [banWindow makeFirstResponder:firstField]; 
    630618 
    631         if( [secondTitle respondsToSelector:@selector( setHidden: )] ) { 
    632                 [secondTitle setHidden:YES]; 
    633                 [secondField setHidden:YES]; 
    634         } else { 
    635                 NSRect frame = [secondTitle frame]; 
    636                 frame.origin.x = 0. - frame.size.width - 10.; 
    637                 [secondTitle setFrame:frame]; 
    638                 frame = [secondField frame]; 
    639                 frame.origin.x = 0. - frame.size.width - 10.; 
    640                 [secondField setFrame:frame]; 
    641         } 
     619        [secondTitle setHidden:YES]; 
     620        [secondField setHidden:YES]; 
    642621 
    643622        NSRect frame = [banWindow frame]; 
     
    674653        [banWindow makeFirstResponder:firstField]; 
    675654 
    676         if( [secondTitle respondsToSelector:@selector( setHidden: )] ) { 
    677                 [secondTitle setHidden:NO]; 
    678                 [secondField setHidden:NO]; 
    679         } else { 
    680                 NSRect frame = [secondTitle frame]; 
    681                 frame.origin.y = [firstField frame].origin.y - frame.size.height - 8; 
    682                 frame.origin.x = [firstField frame].origin.x; 
    683                 [secondTitle setFrame:frame]; 
    684                 frame.size = [secondField frame].size; 
    685                 frame.origin.y = frame.origin.y - frame.size.height - 8; 
    686                 [secondField setFrame:frame]; 
    687         } 
     655        [secondTitle setHidden:NO]; 
     656        [secondField setHidden:NO]; 
    688657 
    689658        NSRect frame = [banWindow frame]; 
  • trunk/Panels/JVChatTranscriptPanel.m

    r3755 r3763  
    465465                NSSearchField *field = [[[NSSearchField alloc] initWithFrame:NSMakeRect( 0., 0., 150., 22. )] autorelease]; 
    466466                [[field cell] setSendsWholeSearchString:NO]; 
    467                 if( [[field cell] respondsToSelector:@selector( setSendsSearchStringImmediately: )] ) 
    468                         [[field cell] setSendsSearchStringImmediately:NO]; 
     467                [[field cell] setSendsSearchStringImmediately:NO]; 
    469468                [[field cell] setPlaceholderString:NSLocalizedString( @"Search Messages", "search field placeholder string" )]; 
    470469                [[field cell] setMaximumRecents:10]; 
     
    727726                                [[MVFileTransferController defaultController] downloadFileAtURL:url toLocalFile:nil]; 
    728727                        } else { 
    729                                 if( ( [[actionInformation objectForKey:WebActionModifierFlagsKey] unsignedIntValue] & NSCommandKeyMask ) && [[NSWorkspace sharedWorkspace] respondsToSelector:@selector( openURLs:withAppBundleIdentifier:options:additionalEventParamDescriptor:launchIdentifiers: )] ) { 
    730                                         [[NSWorkspace sharedWorkspace] openURLs:[NSArray arrayWithObject:url] withAppBundleIdentifier:nil options:NSWorkspaceLaunchWithoutActivation additionalEventParamDescriptor:nil launchIdentifiers:nil]; 
    731                                 } else { 
    732                                         [[NSWorkspace sharedWorkspace] openURL:url]; 
    733                                 } 
     728                                [[NSWorkspace sharedWorkspace] openURLs:[NSArray arrayWithObject:url] withAppBundleIdentifier:nil options:NSWorkspaceLaunchWithoutActivation additionalEventParamDescriptor:nil launchIdentifiers:nil]; 
    734729                        } 
    735730                } 
  • trunk/Plug-Ins/JavaScript Support/JVJavaScriptChatPlugin.m

    r3736 r3763  
    143143                _loading = NO; 
    144144 
    145                 NSString *contents = nil; 
    146                 if( floor( NSAppKitVersionNumber ) <= NSAppKitVersionNumber10_3 ) // test for 10.3 
    147                         contents = [NSString performSelector:@selector( stringWithContentsOfFile: ) withObject:[self scriptFilePath]]; 
    148                 else contents = [NSString stringWithContentsOfFile:[self scriptFilePath] encoding:NSUTF8StringEncoding error:NULL]; 
     145                NSString *contents = [NSString stringWithContentsOfFile:[self scriptFilePath] encoding:NSUTF8StringEncoding error:NULL]; 
    149146 
    150147                [[sender windowScriptObject] evaluateWebScript:contents]; 
  • trunk/Preferences/JVAppearancePreferences.m

    r3718 r3763  
    564564        if( _variantLocked ) return; 
    565565 
    566         if( floor( NSAppKitVersionNumber ) <= NSAppKitVersionNumber10_3 ) // test for 10.3 
    567                 ((void(*)(id, SEL, id, BOOL))objc_msgSend)( _userStyle, @selector( writeToURL: ), [_style variantStyleSheetLocationWithName:[_style defaultVariantName]], YES ); 
    568         else [_userStyle writeToURL:[_style variantStyleSheetLocationWithName:[_style defaultVariantName]] atomically:YES encoding:NSUTF8StringEncoding error:NULL]; 
     566        [_userStyle writeToURL:[_style variantStyleSheetLocationWithName:[_style defaultVariantName]] atomically:YES encoding:NSUTF8StringEncoding error:NULL]; 
    569567 
    570568        NSDictionary *info = [NSDictionary dictionaryWithObjectsAndKeys:[_style defaultVariantName], @"variant", nil]; 
     
    771769        NSString *path = [[NSString stringWithFormat:@"~/Library/Application Support/Colloquy/Styles/Variants/%@/%@.css", [_style identifier], name] stringByExpandingTildeInPath]; 
    772770 
    773         if( floor( NSAppKitVersionNumber ) <= NSAppKitVersionNumber10_3 ) // test for 10.3 
    774                 ((void(*)(id, SEL, id, BOOL))objc_msgSend)( _userStyle, @selector( writeToFile: ), path, YES ); 
    775         else [_userStyle writeToFile:path atomically:YES encoding:NSUTF8StringEncoding error:NULL]; 
     771        [_userStyle writeToFile:path atomically:YES encoding:NSUTF8StringEncoding error:NULL]; 
    776772 
    777773        [_style setDefaultVariantName:name]; 
  • trunk/Resources/Info.plist

    r3751 r3763  
    105105        </array> 
    106106        <key>LSMinimumSystemVersion</key> 
    107         <string>10.3.9</string> 
     107        <string>10.4</string> 
    108108        <key>CFBundleVersion</key> 
    109109        <string>source</string> 
  • trunk/Settings/Common Settings.xcconfig

    r3762 r3763  
    3838LIBRARY_SEARCH_PATHS = "$(SRCROOT)/Frameworks" 
    3939MACOSX_DEPLOYMENT_TARGET = $(MACOSX_DEPLOYMENT_TARGET_$(CURRENT_ARCH)) 
    40 MACOSX_DEPLOYMENT_TARGET_ = 10.3 
     40MACOSX_DEPLOYMENT_TARGET_ = 10.4 
    4141MACOSX_DEPLOYMENT_TARGET_i386 = 10.4 
    4242MACOSX_DEPLOYMENT_TARGET_ppc64 = 10.5 
    43 MACOSX_DEPLOYMENT_TARGET_ppc7400 = 10.3 
    44 MACOSX_DEPLOYMENT_TARGET_ppc970 = 10.3 
    45 MACOSX_DEPLOYMENT_TARGET_ppc = 10.3 
     43MACOSX_DEPLOYMENT_TARGET_ppc7400 = 10.4 
     44MACOSX_DEPLOYMENT_TARGET_ppc970 = 10.4 
     45MACOSX_DEPLOYMENT_TARGET_ppc = 10.4 
    4646MACOSX_DEPLOYMENT_TARGET_x86_64 = 10.5 
    4747ONLY_LINK_ESSENTIAL_SYMBOLS = YES 
     
    5050PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR = NO 
    5151SDKROOT = $(SDKROOT_$(CURRENT_ARCH)) 
    52 SDKROOT_ = /Developer/SDKs/MacOSX10.3.9.sdk 
     52SDKROOT_ = /Developer/SDKs/MacOSX10.4u.sdk 
    5353SDKROOT_i386 = /Developer/SDKs/MacOSX10.4u.sdk 
    5454SDKROOT_ppc64 = /Developer/SDKs/MacOSX10.5.sdk 
    55 SDKROOT_ppc7400 = /Developer/SDKs/MacOSX10.3.9.sdk 
    56 SDKROOT_ppc970 = /Developer/SDKs/MacOSX10.3.9.sdk 
    57 SDKROOT_ppc = /Developer/SDKs/MacOSX10.3.9.sdk 
     55SDKROOT_ppc7400 = /Developer/SDKs/MacOSX10.4u.sdk 
     56SDKROOT_ppc970 = /Developer/SDKs/MacOSX10.4u.sdk 
     57SDKROOT_ppc = /Developer/SDKs/MacOSX10.4u.sdk 
    5858SDKROOT_x86_64 = /Developer/SDKs/MacOSX10.5.sdk 
    5959STRIP_INSTALLED_PRODUCT = NO 
  • trunk/Views/JVStyleView.m

    r3708 r3763  
    411411        } 
    412412 
    413         NSString *shell = nil; 
    414         if( floor( NSAppKitVersionNumber ) <= NSAppKitVersionNumber10_3 ) // test for 10.3 
    415                 shell = [NSString performSelector:@selector( stringWithContentsOfFile: ) withObject:[[NSBundle mainBundle] pathForResource:name ofType:@"html"]]; 
    416         else shell = [NSString stringWithContentsOfFile:[[NSBundle mainBundle] pathForResource:name ofType:@"html"] encoding:NSUTF8StringEncoding error:NULL]; 
     413        NSString *shell = [NSString stringWithContentsOfFile:[[NSBundle mainBundle] pathForResource:name ofType:@"html"] encoding:NSUTF8StringEncoding error:NULL]; 
    417414 
    418415        DOMHTMLElement *element = (DOMHTMLElement *)[_mainDocument createElement:@"div"]; 
     
    915912        if( ! variantStyleSheetLocation ) variantStyleSheetLocation = @""; 
    916913 
    917         NSString *shell = nil; 
    918         if( floor( NSAppKitVersionNumber ) <= NSAppKitVersionNumber10_3 ) // test for 10.3 
    919                 shell = [NSString performSelector:@selector( stringWithContentsOfFile: ) withObject:[[NSBundle mainBundle] pathForResource:@"template" ofType:@"html"]]; 
    920         else shell = [NSString stringWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"template" ofType:@"html"] encoding:NSUTF8StringEncoding error:NULL]; 
     914        NSString *shell = [NSString stringWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"template" ofType:@"html"] encoding:NSUTF8StringEncoding error:NULL]; 
    921915 
    922916        NSString *bodyTemplate = [[self style] contentsOfBodyTemplateWithName:[self bodyTemplate]];