Skip to content

Commit ffcb436

Browse files
committed
Mavericks changes
Import Mac OS X 10.9 TextEdit Version 1.9 source code.
1 parent ca07c74 commit ffcb436

File tree

123 files changed

+3953
-2806
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

123 files changed

+3953
-2806
lines changed

English.lproj/DocumentProperties.nib/designable.nib renamed to Base.lproj/DocumentProperties.nib/designable.nib

+559-665
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Binary file not shown.

English.lproj/Edit.nib/designable.nib renamed to Base.lproj/Edit.nib/designable.nib

+223-45
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

English.lproj/Preferences.nib/designable.nib renamed to Base.lproj/Preferences.nib/designable.nib

+1,041-1,202
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
59.6 KB
Binary file not shown.

English.lproj/PrintPanelAccessory.nib/designable.nib renamed to Base.lproj/PrintPanelAccessory.nib/designable.nib

+97-192
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Binary file not shown.

Base.lproj/SelectEncodingsPanel.nib/designable.nib

+1,019
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Binary file not shown.

Base.lproj/SelectLinePanel.nib/designable.nib

+478
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
5.52 KB
Binary file not shown.

Controller.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
Abstract: Central controller object for TextEdit, for implementing app functionality (services) as well
55
as few tidbits for which there are no dedicated controllers.
66
7-
Version: 1.8
7+
Version: 1.9
88
99
Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple
1010
Inc. ("Apple") in consideration of your agreement to the following

Controller.m

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
Abstract: Central controller object for TextEdit, for implementing app functionality (services) as well
55
as few tidbits for which there are no dedicated controllers.
66
7-
Version: 1.8
7+
Version: 1.9
88
99
Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple
1010
Inc. ("Apple") in consideration of your agreement to the following

Document.h

+1-3
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
File: Document.h
44
Abstract: Document object for TextEdit.
55
6-
Version: 1.8
6+
Version: 1.9
77
88
Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple
99
Inc. ("Apple") in consideration of your agreement to the following
@@ -84,7 +84,6 @@
8484
NSStringEncoding documentEncodingForSaving; /* NSStringEncoding for saving the document */
8585
NSSaveOperationType currentSaveOperation; /* So we can know whether to use documentEncodingForSaving or documentEncoding
8686
in -fileWrapperOfType:error: */
87-
NSLock *saveOperationTypeLock; /* so we can atomically set the save operation type and do the save */
8887

8988

9089
// Temporary information about document's desired file type
@@ -150,7 +149,6 @@
150149
/* Action methods */
151150
- (IBAction)toggleReadOnly:(id)sender;
152151
- (IBAction)togglePageBreaks:(id)sender;
153-
- (IBAction)saveDocumentAsPDFTo:(id)sender;
154152

155153
/* Whether conversion to rich/plain be done without loss of information */
156154
- (BOOL)toggleRichWillLoseInformation;

Document.m

+25-31
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
File: Document.m
44
Abstract: Document object for TextEdit.
55
6-
Version: 1.8
6+
Version: 1.9
77
88
Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple
99
Inc. ("Apple") in consideration of your agreement to the following
@@ -112,7 +112,6 @@ - (id)init {
112112
[self setScaleFactor:1.0];
113113
[self setDocumentPropertiesToDefaults];
114114
inDuplicate = NO;
115-
saveOperationTypeLock = [[NSLock alloc] init];
116115

117116
// Assume the default file type for now, since -initWithType:error: does not currently get called when creating documents using AppleScript. (4165700)
118117
[self setFileType:[[NSDocumentController sharedDocumentController] defaultType]];
@@ -207,7 +206,7 @@ - (BOOL)readFromURL:(NSURL *)absoluteURL ofType:(NSString *)typeName encoding:(N
207206
[text beginEditing];
208207
success = [text readFromURL:absoluteURL options:options documentAttributes:&docAttrs error:outError];
209208

210-
if (!success) {
209+
if (!success) {
211210
[text endEditing];
212211
layoutMgrEnum = [layoutMgrs objectEnumerator]; // rewind
213212
while ((layoutMgr = [layoutMgrEnum nextObject])) [text addLayoutManager:layoutMgr]; // Add the layout managers back
@@ -332,13 +331,9 @@ - (NSDictionary *)defaultTextAttributes:(BOOL)forRichText {
332331
[textAttributes setObject:defaultRichParaStyle forKey:NSParagraphStyleAttributeName];
333332
} else {
334333
NSFont *plainFont = [NSFont userFixedPitchFontOfSize:0.0];
335-
NSFont *charWidthFont = plainFont;
334+
NSFont *charWidthFont = [plainFont screenFontWithRenderingMode:NSFontDefaultRenderingMode];
336335
NSInteger tabWidth = [[NSUserDefaults standardUserDefaults] integerForKey:TabWidth];
337-
CGFloat charWidth;
338-
339-
if ([self usesScreenFonts]) charWidthFont = [plainFont screenFontWithRenderingMode:NSFontDefaultRenderingMode];
340-
341-
charWidth = [@" " sizeWithAttributes:[NSDictionary dictionaryWithObject:charWidthFont forKey:NSFontAttributeName]].width;
336+
CGFloat charWidth = [@" " sizeWithAttributes:[NSDictionary dictionaryWithObject:charWidthFont forKey:NSFontAttributeName]].width;
342337
if (charWidth == 0) charWidth = [charWidthFont maximumAdvancement].width;
343338

344339
// Now use a default paragraph style, but with the tab width adjusted
@@ -398,11 +393,11 @@ - (void)dealloc {
398393
[title release];
399394
[keywords release];
400395
[copyright release];
396+
[company release];
401397

402398
[fileTypeToSet release];
403399

404400
[originalOrientationSections release];
405-
[saveOperationTypeLock release];
406401
[super dealloc];
407402
}
408403

@@ -567,14 +562,17 @@ - (BOOL)isRichText {
567562
*/
568563
- (NSDictionary *)documentPropertyToAttributeNameMappings {
569564
static NSDictionary *dict = nil;
570-
if (!dict) dict = [[NSDictionary alloc] initWithObjectsAndKeys:
571-
NSCompanyDocumentAttribute, @"company",
572-
NSAuthorDocumentAttribute, @"author",
573-
NSKeywordsDocumentAttribute, @"keywords",
574-
NSCopyrightDocumentAttribute, @"copyright",
575-
NSTitleDocumentAttribute, @"title",
576-
NSSubjectDocumentAttribute, @"subject",
577-
NSCommentDocumentAttribute, @"comment", nil];
565+
static dispatch_once_t onceToken;
566+
dispatch_once(&onceToken, ^{
567+
dict = [[NSDictionary alloc] initWithObjectsAndKeys:
568+
NSCompanyDocumentAttribute, @"company",
569+
NSAuthorDocumentAttribute, @"author",
570+
NSKeywordsDocumentAttribute, @"keywords",
571+
NSCopyrightDocumentAttribute, @"copyright",
572+
NSTitleDocumentAttribute, @"title",
573+
NSSubjectDocumentAttribute, @"subject",
574+
NSCommentDocumentAttribute, @"comment", nil];
575+
});
578576
return dict;
579577
}
580578

@@ -816,12 +814,6 @@ - (BOOL)revertToContentsOfURL:(NSURL *)url ofType:(NSString *)type error:(NSErro
816814
return success;
817815
}
818816

819-
/* Target/action method for saving as (actually "saving to") PDF. Note that this approach of omitting the path will not work on Leopard; see TextEdit's README.rtf
820-
*/
821-
- (IBAction)saveDocumentAsPDFTo:(id)sender {
822-
[self printDocumentWithSettings:[NSDictionary dictionaryWithObjectsAndKeys:NSPrintSaveJob, NSPrintJobDisposition, nil] showPrintPanel:NO delegate:nil didPrintSelector:NULL contextInfo:NULL];
823-
}
824-
825817
@end
826818

827819

@@ -895,13 +887,13 @@ - (NSString *)fileNameExtensionForType:(NSString *)inTypeName saveOperation:(NSS
895887
- (void)saveToURL:(NSURL *)absoluteURL ofType:(NSString *)typeName forSaveOperation:(NSSaveOperationType)saveOperation completionHandler:(void (^)(NSError *error))handler {
896888
// Note that we do the breakUndoCoalescing call even during autosave, which means the user's undo of long typing will take them back to the last spot an autosave occured. This might seem confusing, and a more elaborate solution may be possible (cause an autosave without having to breakUndoCoalescing), but since this change is coming late in Leopard, we decided to go with the lower risk fix.
897889
[[self windowControllers] makeObjectsPerformSelector:@selector(breakUndoCoalescing)];
898-
[saveOperationTypeLock lock];
899-
currentSaveOperation = saveOperation;
900-
handler = [Block_copy(handler) autorelease];
901-
[super saveToURL:absoluteURL ofType:typeName forSaveOperation:saveOperation completionHandler:^(NSError *error) {
890+
[self performAsynchronousFileAccessUsingBlock:^(void (^fileAccessCompletionHandler)(void) ) {
891+
currentSaveOperation = saveOperation;
892+
[super saveToURL:absoluteURL ofType:typeName forSaveOperation:saveOperation completionHandler:^(NSError *error) {
902893
[self setEncodingForSaving:NoStringEncoding]; // This is set during prepareSavePanel:, but should be cleared for future save operation without save panel
903-
[saveOperationTypeLock unlock];
904-
handler(error);
894+
fileAccessCompletionHandler();
895+
handler(error);
896+
}];
905897
}];
906898

907899
}
@@ -1286,7 +1278,9 @@ - (BOOL)prepareSavePanel:(NSSavePanel *)savePanel {
12861278
string = [textStorage string];
12871279
NSStringEncoding enc = [self encoding];
12881280
[self setEncodingForSaving:(enc == NoStringEncoding || ![string canBeConvertedToEncoding:enc]) ? [self suggestedDocumentEncoding] : enc];
1289-
[savePanel setAccessoryView:[[[NSDocumentController sharedDocumentController] class] encodingAccessory:[self encodingForSaving] includeDefaultEntry:NO encodingPopUp:&encodingPopup checkBox:&extCheckbox]];
1281+
NSView *accessoryView = [[[NSDocumentController sharedDocumentController] class] encodingAccessory:[self encodingForSaving] includeDefaultEntry:NO encodingPopUp:&encodingPopup checkBox:&extCheckbox];
1282+
accessoryView.translatesAutoresizingMaskIntoConstraints = NO;
1283+
[savePanel setAccessoryView:accessoryView];
12901284

12911285
// Set up the checkbox
12921286
[extCheckbox setTitle:NSLocalizedString(@"If no extension is provided, use \\U201c.txt\\U201d.", @"Checkbox indicating that if the user does not specify an extension when saving a plain text file, .txt will be used")];

DocumentController.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
Abstract: NSDocumentController subclass for TextEdit.
55
Required to support transient documents and customized Open panel.
66
7-
Version: 1.8
7+
Version: 1.9
88
99
Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple
1010
Inc. ("Apple") in consideration of your agreement to the following

DocumentController.m

+6-5
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
Abstract: NSDocumentController subclass for TextEdit.
55
Required to support transient documents and customized Open panel.
66
7-
Version: 1.8
7+
Version: 1.9
88
99
Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple
1010
Inc. ("Apple") in consideration of your agreement to the following
@@ -281,14 +281,14 @@ - (void)addDocument:(NSDocument *)newDoc {
281281
+ (NSView *)encodingAccessory:(NSStringEncoding)encoding includeDefaultEntry:(BOOL)includeDefaultItem encodingPopUp:(NSPopUpButton **)popup checkBox:(NSButton **)button {
282282
OpenSaveAccessoryOwner *owner = [[[OpenSaveAccessoryOwner alloc] init] autorelease];
283283
// Rather than caching, load the accessory view everytime, as it might appear in multiple panels simultaneously.
284-
if (![NSBundle loadNibNamed:@"EncodingAccessory" owner:owner]) {
284+
if (![[NSBundle mainBundle] loadNibNamed:@"EncodingAccessory" owner:owner topLevelObjects:NULL]) {
285285
NSLog(@"Failed to load EncodingAccessory.nib");
286286
return nil;
287287
}
288288
if (popup) *popup = owner->encodingPopUp;
289289
if (button) *button = owner->checkBox;
290290
[[EncodingManager sharedInstance] setupPopUpCell:[owner->encodingPopUp cell] selectedEncoding:encoding withDefaultEntry:includeDefaultItem];
291-
return [owner->accessoryView autorelease];
291+
return owner->accessoryView;
292292
}
293293

294294
/* Overridden to add an accessory view to the open panel. This method is called for both modal and non-modal invocations.
@@ -299,7 +299,9 @@ - (void)beginOpenPanel:(NSOpenPanel *)openPanel forTypes:(NSArray *)types comple
299299

300300
BOOL ignoreHTMLOrig = [[NSUserDefaults standardUserDefaults] boolForKey:IgnoreHTML];
301301
BOOL ignoreRichOrig = [[NSUserDefaults standardUserDefaults] boolForKey:IgnoreRichText];
302-
[openPanel setAccessoryView:[[self class] encodingAccessory:[[[NSUserDefaults standardUserDefaults] objectForKey:PlainTextEncodingForRead] unsignedIntegerValue] includeDefaultEntry:YES encodingPopUp:&encodingPopUp checkBox:&ignoreRichTextButton]];
302+
NSView *accessoryView = [[self class] encodingAccessory:[[[NSUserDefaults standardUserDefaults] objectForKey:PlainTextEncodingForRead] unsignedIntegerValue] includeDefaultEntry:YES encodingPopUp:&encodingPopUp checkBox:&ignoreRichTextButton];
303+
accessoryView.translatesAutoresizingMaskIntoConstraints = NO;
304+
[openPanel setAccessoryView:accessoryView];
303305
[ignoreRichTextButton setTitle:NSLocalizedString(@"Ignore rich text commands", @"Checkbox indicating that when opening a rich text file, the rich text should be ignored (causing the file to be loaded as plain text)")];
304306
[ignoreRichTextButton setToolTip:NSLocalizedString(@"If selected, HTML and RTF files will be loaded as plain text, allowing you to see and edit the HTML or RTF directives.", @"Tooltip for checkbox indicating that when opening a rich text file, the rich text should be ignored (causing the file to be loaded as plain text)")];
305307
if (ignoreRichOrig != ignoreHTMLOrig) {
@@ -352,4 +354,3 @@ - (NSString *)defaultType {
352354
}
353355

354356
@end
355-

DocumentPropertiesPanelController.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
99
This class is mostly reusable, except with the assumption that commitEditing always succeeds.
1010
11-
Version: 1.8
11+
Version: 1.9
1212
1313
Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple
1414
Inc. ("Apple") in consideration of your agreement to the following

DocumentPropertiesPanelController.m

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
99
This class is mostly reusable, except with the assumption that commitEditing always succeeds.
1010
11-
Version: 1.8
11+
Version: 1.9
1212
1313
Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple
1414
Inc. ("Apple") in consideration of your agreement to the following

DocumentWindowController.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
File: DocumentWindowController.h
44
Abstract: Document's main window controller object for TextEdit.
55
6-
Version: 1.8
6+
Version: 1.9
77
88
Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple
99
Inc. ("Apple") in consideration of your agreement to the following

DocumentWindowController.m

+49-36
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
File: DocumentWindowController.m
44
Abstract: Document's main window controller object for TextEdit.
55
6-
Version: 1.8
6+
Version: 1.9
77
88
Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple
99
Inc. ("Apple") in consideration of your agreement to the following
@@ -758,7 +758,7 @@ - (void)toggleRichWithNewFileType:(NSString *)type {
758758
[undoManager beginUndoGrouping];
759759

760760
NSString *undoType = (NSString *)((isRich) ? (([[[self firstTextView] textStorage] containsAttachments] || [[document fileType] isEqualToString:(NSString *)kUTTypeRTFD]) ? kUTTypeRTFD : kUTTypeRTF) : kUTTypePlainText);
761-
761+
762762
[undoManager registerUndoWithTarget:self selector:_cmd object:undoType];
763763

764764
[document setUsesScreenFonts:isRich];
@@ -778,52 +778,65 @@ - (void)toggleRichWithNewFileType:(NSString *)type {
778778
if (type == nil) type = (NSString *)(isRich ? kUTTypePlainText : kUTTypeRTF);
779779

780780
if (fileURL) {
781-
[document saveToURL:fileURL ofType:type forSaveOperation:NSAutosaveInPlaceOperation completionHandler:^(NSError *error) {
782-
if (error) {
783-
[document setFileURL:nil];
784-
[document setFileType:type];
785-
}
786-
}];
787-
} else {
788-
[document setFileType:type];
789-
}
790-
}
791781

792-
- (void)autosaveIfNeededThenToggleRich {
793-
Document *document = [self document];
794-
795-
if ([document fileURL] && [document isDocumentEdited]) {
796-
[document autosaveWithImplicitCancellability:NO completionHandler:^(NSError *error) {
797-
if (!error) [self toggleRichWithNewFileType:nil];
798-
}];
782+
// Synchronously calling a method that invokes -performAsynchronousFileAccessUsingBlock: (like -saveToURL:ofType:forSaveOperation:completionHandler:) in the completion handler of method that uses -continueAsynchronousWorkOnMainThreadUsingBlock: to invoke its completion handler on the main thread (like -autosaveWithImplicitCancellability:completionHandler:, used in -toggleRich:) triggers a bug in NSdocument where the -performAsynchronousFileAccessUsingBlock: invocation has no effect besides invoking its block. This can potentially result in two 'file access' blocks being invoked at the same time, which breaks the contract.
783+
CFRunLoopPerformBlock(CFRunLoopGetMain(), kCFRunLoopDefaultMode, ^{
784+
[document saveToURL:fileURL ofType:type forSaveOperation:NSAutosaveInPlaceOperation completionHandler:^(NSError *error) {
785+
if (error) {
786+
[document setFileURL:nil];
787+
[document setFileType:type];
788+
}
789+
}];
790+
});
799791
} else {
800-
[self toggleRichWithNewFileType:nil];
792+
[document setFileType:type];
801793
}
802794
}
803795

804796
/* toggleRich: puts up an alert before ultimately calling -setRichText:
805797
*/
806798
- (void)toggleRich:(id)sender {
807799
Document *document = [self document];
808-
// Check if there is any loss of information
809-
if ([document toggleRichWillLoseInformation]) {
810-
[document performActivityWithSynchronousWaiting:YES usingBlock:^(void (^activityCompletionHandler)(void)) {
811-
NSBeginAlertSheet(NSLocalizedString(@"Convert this document to plain text?", @"Title of alert confirming Make Plain Text"),
812-
NSLocalizedString(@"OK", @"OK"), NSLocalizedString(@"Cancel", @"Button choice that allows the user to cancel."), nil, [[self document] windowForSheet],
813-
self, NULL, @selector(didEndToggleRichSheet:returnCode:contextInfo:),
814-
Block_copy(^(void) {
815-
activityCompletionHandler();
816-
}),
817-
NSLocalizedString(@"Making a rich text document plain will lose all text styles (such as fonts and colors), images, attachments, and document properties.", @"Subtitle of alert confirming Make Plain Text"));
800+
[document performActivityWithSynchronousWaiting:YES usingBlock:^(void (^activityCompletionHandler)(void)) {
801+
802+
// What we'll do to cause the document to toggle rich, after maybe showing an alert about loss of information.
803+
void (^continueTogglingRich)(void) = ^{
804+
[document autosaveWithImplicitCancellability:NO completionHandler:^(NSError *error) {
805+
if (!error) {
806+
[self toggleRichWithNewFileType:nil];
807+
}
808+
activityCompletionHandler();
809+
}];
810+
811+
};
812+
813+
// Check if there is any loss of information, waiting for any previous saves (which might be changing the type) to complete.
814+
__block BOOL willLoseInformation = NO;
815+
[document performSynchronousFileAccessUsingBlock:^{
816+
willLoseInformation = [document toggleRichWillLoseInformation];
818817
}];
819-
} else {
820-
[self autosaveIfNeededThenToggleRich];
821-
}
818+
if (willLoseInformation) {
819+
NSString *messageText = NSLocalizedString(@"Convert this document to plain text?", @"Title of alert confirming Make Plain Text");
820+
NSString *defaultButton = NSLocalizedString(@"OK", @"OK");
821+
NSString *alternateButton = NSLocalizedString(@"Cancel", @"Button choice that allows the user to cancel.");
822+
NSString *informativeText = NSLocalizedString(@"Making a rich text document plain will lose all text styles (such as fonts and colors), images, attachments, and document properties.", @"Subtitle of alert confirming Make Plain Text");
823+
NSAlert *alert = [NSAlert alertWithMessageText:messageText defaultButton:defaultButton alternateButton:alternateButton otherButton:nil informativeTextWithFormat:@"%@", informativeText];
824+
[alert beginSheetModalForWindow:[[self document] windowForSheet] modalDelegate:self didEndSelector:@selector(didEndToggleRichSheet:returnCode:contextInfo:) contextInfo:Block_copy(^(BOOL okToToggleRich){
825+
if (okToToggleRich) {
826+
continueTogglingRich();
827+
} else {
828+
activityCompletionHandler();
829+
}
830+
})];
831+
} else {
832+
continueTogglingRich();
833+
}
834+
835+
}];
822836
}
823837

824-
- (void)didEndToggleRichSheet:(NSWindow *)sheet returnCode:(NSInteger)returnCode contextInfo:(void (^)(void))block {
825-
if (returnCode == NSAlertDefaultReturn) [self autosaveIfNeededThenToggleRich];
826-
block();
838+
- (void)didEndToggleRichSheet:(NSWindow *)sheet returnCode:(NSInteger)returnCode contextInfo:(void (^)(BOOL))block {
839+
block(returnCode == NSAlertDefaultReturn);
827840
Block_release(block);
828841
}
829842

Edit.icns

-1.6 MB
Binary file not shown.

Edit.iconset/icon_128x128.png

28.1 KB
Loading

Edit.iconset/[email protected]

77.5 KB
Loading

Edit.iconset/icon_16x16.png

3.85 KB
Loading

Edit.iconset/[email protected]

5.63 KB
Loading

Edit.iconset/icon_256x256.png

77.5 KB
Loading

Edit.iconset/[email protected]

235 KB
Loading

Edit.iconset/icon_32x32.png

5.62 KB
Loading

Edit.iconset/[email protected]

11.2 KB
Loading

Edit.iconset/icon_512x512.png

235 KB
Loading

Edit.iconset/[email protected]

783 KB
Loading

Edit_main.m

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
File: Edit_main.m
44
Abstract: Standard main file.
55
6-
Version: 1.8
6+
Version: 1.9
77
88
Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple
99
Inc. ("Apple") in consideration of your agreement to the following

EncodingManager.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
Abstract: Helper class providing additional functionality for character encodings.
55
This file also defines the EncodingPopUpButtonCell class.
66
7-
Version: 1.8
7+
Version: 1.9
88
99
Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple
1010
Inc. ("Apple") in consideration of your agreement to the following

0 commit comments

Comments
 (0)