| 344 | | |
| 345 | | if ([enteredText rangeOfString:@"@"].location != NSNotFound) { |
| 346 | | NSString *jidUsername = [enteredText JIDUsernameComponent]; |
| 347 | | NSString *jidHostname = [enteredText JIDHostnameComponent]; |
| 348 | | NSString *updatedEnteredText = enteredText; |
| 349 | | |
| | 347 | NSString *updatedEnteredText = enteredText; |
| | 348 | |
| | 349 | NSString *jidUsername = [enteredText JIDUsernameComponent]; |
| | 350 | NSString *jidHostname = [enteredText JIDHostnameComponent]; |
| | 351 | |
| | 352 | if ([enteredText rangeOfString:@"@"].location != NSNotFound && |
| | 353 | ![[[m_JIDTabView selectedTabViewItem] identifier] isEqualToString:@"transport"]) |
| | 354 | { |
| 359 | | |
| 360 | | // -setSelectedServiceHostname: may have changed the active text entry field |
| 361 | | NSTextField *curEntryField = [self JIDEntryTextField]; |
| 362 | | |
| 363 | | if (updatedEnteredText != enteredText || prevEntryField != curEntryField) { |
| 364 | | [curEntryField setStringValue:updatedEnteredText]; |
| 365 | | } |
| 366 | | if (prevEntryField != curEntryField) { |
| 367 | | // Move the text caret to the end of the entered text |
| 368 | | [[curEntryField currentEditor] setSelectedRange:NSMakeRange([updatedEnteredText length], 0)]; |
| 369 | | } |
| | 364 | } |
| | 365 | |
| | 366 | if ([[[m_JIDTabView selectedTabViewItem] identifier] isEqualToString:@"transport"]) { |
| | 367 | NSArray *realJIDComponents = [(jidUsername ? jidUsername : jidHostname) componentsSeparatedByString:@"%"]; |
| | 368 | |
| | 369 | if ([realJIDComponents count] >= 2) { |
| | 370 | updatedEnteredText = [realJIDComponents componentsJoinedByString:@"@"]; |
| | 371 | } |
| | 372 | } |
| | 373 | |
| | 374 | // -setSelectedServiceHostname: may have changed the active text entry field |
| | 375 | NSTextField *curEntryField = [self JIDEntryTextField]; |
| | 376 | |
| | 377 | if (updatedEnteredText != enteredText || prevEntryField != curEntryField) { |
| | 378 | [curEntryField setStringValue:updatedEnteredText]; |
| | 379 | } |
| | 380 | if (prevEntryField != curEntryField) { |
| | 381 | // Move the text caret to the end of the entered text |
| | 382 | [[curEntryField currentEditor] setSelectedRange:NSMakeRange([updatedEnteredText length], 0)]; |