Reviewed by Chris.
- WebKit part of fix for <rdar://problem/
3415264>
Default encoding should initially be set to current system encoding
* WebView.subproj/WebPreferences.m:
(-[WebPreferences _setInitialDefaultTextEncodingToSystemEncoding]):
new SPI that sets the initial value of the default text encoding to
be the system encoding, with a special-case conversion of MacRoman->Latin1.
This is not done automatically for WebKit clients for fear of breaking them.
* WebView.subproj/WebPreferencesPrivate.h:
declare new SPI
WebBrowser:
Reviewed by Chris.
- WebBrowser part of fix for <rdar://problem/
3415264>
Default encoding should initially be set to current system encoding
* AppController.m:
(-[AppController applicationDidFinishLaunching:]):
call new SPI -[WebPreferences _setInitialDefaultTextEncodingToSystemEncoding]
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@7659
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
+2004-09-23 John Sullivan <sullivan@apple.com>
+
+ Reviewed by Chris.
+
+ - WebKit part of fix for <rdar://problem/3415264>
+ Default encoding should initially be set to current system encoding
+
+ * WebView.subproj/WebPreferences.m:
+ (-[WebPreferences _setInitialDefaultTextEncodingToSystemEncoding]):
+ new SPI that sets the initial value of the default text encoding to
+ be the system encoding, with a special-case conversion of MacRoman->Latin1.
+ This is not done automatically for WebKit clients for fear of breaking them.
+
+ * WebView.subproj/WebPreferencesPrivate.h:
+ declare new SPI
+
2004-09-23 Darin Adler <darin@apple.com>
Reviewed by Ken.
userInfo:nil];
}
+- (void)_setInitialDefaultTextEncodingToSystemEncoding
+{
+ CFStringEncoding encoding = CFStringGetSystemEncoding();
+
+ // MacRoman is a special case; maybe we will learn that there should be other special cases later.
+ if (encoding == kCFStringEncodingMacRoman) {
+ encoding = kCFStringEncodingISOLatin1;
+ }
+
+ NSString *name = (NSString *)CFStringConvertEncodingToIANACharSetName(encoding);
+
+ // fall back to latin1 if necessary
+ if (name == nil) {
+ name = (NSString *)CFStringConvertEncodingToIANACharSetName(kCFStringEncodingISOLatin1);
+ }
+
+ [[NSUserDefaults standardUserDefaults] registerDefaults:
+ [NSDictionary dictionaryWithObject:name
+ forKey:WebKitDefaultTextEncodingNamePreferenceKey]];
+}
+
static NSString *classIBCreatorID = nil;
+ (void)_setIBCreatorID:(NSString *)string
+ (void)_setInstance:(WebPreferences *)instance forIdentifier:(NSString *)identifier;
+ (void)_removeReferenceForIdentifier:(NSString *)identifier;
- (NSTimeInterval)_backForwardCacheExpirationInterval;
-
+- (void)_setInitialDefaultTextEncodingToSystemEncoding;
+ (void)_setIBCreatorID:(NSString *)string;
@end