[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677

darin darin at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 06:24:09 UTC 2009


The following commit has been merged in the debian/unstable branch:
commit ec141631cd7cdebebb4a0f827a1d135979a7763b
Author: darin <darin at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Fri Jul 12 18:54:46 2002 +0000

    WebFoundation:
    
            * Misc.subproj/IFNSDictionaryExtensions.h:
            * Misc.subproj/IFNSDictionaryExtensions.m:
            (-[NSDictionary _IF_objectForMIMEType:]): Added. Looks in the dictionary
    	first by the full MIME type, then by the part leading up to the "/".
    	Used in WebKit for the dictionaries for representation and view classes.
    
    WebKit:
    
            * WebView.subproj/IFWebDataSource.mm:
            (+[IFWebDataSource registerRepresentationClass:forMIMEType:]):
    	Use self instead of [self class].
            (+[IFWebDataSource createRepresentationForMIMEType:]):
    	Use the new _IF_objectForMIMEType to simplify and use hash table
    	instead of linear search.
            * WebView.subproj/IFWebDataSourcePrivate.mm:
            (+[IFWebDataSource _repTypes]): Use initWithObjectsAndKeys for
    	brevity and a tiny tiny bit of efficiency.
            (+[IFWebDataSource _canShowMIMEType:]):
    	Use the new _IF_objectForMIMEType to simplify and use hash table
    	instead of linear search.
            * WebView.subproj/IFWebView.mm:
            (+[IFWebView registerViewClass:forMIMEType:]):
    	Use self instead of [self class].
            (+[IFWebView createViewForMIMEType:]):
    	Use the new _IF_objectForMIMEType to simplify and use hash table
    	instead of linear search.
            * WebView.subproj/IFWebViewPrivate.mm:
            (+[IFWebView _canShowMIMEType:]):
    	Use the new _IF_objectForMIMEType to simplify and use hash table
    	instead of linear search.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@1546 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebKit/ChangeLog b/WebKit/ChangeLog
index 51cea8b..b57fb9a 100644
--- a/WebKit/ChangeLog
+++ b/WebKit/ChangeLog
@@ -1,5 +1,30 @@
 2002-07-12  Darin Adler  <darin at apple.com>
 
+        * WebView.subproj/IFWebDataSource.mm:
+        (+[IFWebDataSource registerRepresentationClass:forMIMEType:]):
+	Use self instead of [self class].
+        (+[IFWebDataSource createRepresentationForMIMEType:]):
+	Use the new _IF_objectForMIMEType to simplify and use hash table
+	instead of linear search.
+        * WebView.subproj/IFWebDataSourcePrivate.mm:
+        (+[IFWebDataSource _repTypes]): Use initWithObjectsAndKeys for
+	brevity and a tiny tiny bit of efficiency.
+        (+[IFWebDataSource _canShowMIMEType:]):
+	Use the new _IF_objectForMIMEType to simplify and use hash table
+	instead of linear search.
+        * WebView.subproj/IFWebView.mm:
+        (+[IFWebView registerViewClass:forMIMEType:]):
+	Use self instead of [self class].
+        (+[IFWebView createViewForMIMEType:]):
+	Use the new _IF_objectForMIMEType to simplify and use hash table
+	instead of linear search.
+        * WebView.subproj/IFWebViewPrivate.mm:
+        (+[IFWebView _canShowMIMEType:]):
+	Use the new _IF_objectForMIMEType to simplify and use hash table
+	instead of linear search.
+
+2002-07-12  Darin Adler  <darin at apple.com>
+
         * WebKit.pbproj/project.pbxproj: Re-added JavaScriptCore, which
 	I removed by accident.
 
diff --git a/WebKit/ChangeLog-2002-12-03 b/WebKit/ChangeLog-2002-12-03
index 51cea8b..b57fb9a 100644
--- a/WebKit/ChangeLog-2002-12-03
+++ b/WebKit/ChangeLog-2002-12-03
@@ -1,5 +1,30 @@
 2002-07-12  Darin Adler  <darin at apple.com>
 
+        * WebView.subproj/IFWebDataSource.mm:
+        (+[IFWebDataSource registerRepresentationClass:forMIMEType:]):
+	Use self instead of [self class].
+        (+[IFWebDataSource createRepresentationForMIMEType:]):
+	Use the new _IF_objectForMIMEType to simplify and use hash table
+	instead of linear search.
+        * WebView.subproj/IFWebDataSourcePrivate.mm:
+        (+[IFWebDataSource _repTypes]): Use initWithObjectsAndKeys for
+	brevity and a tiny tiny bit of efficiency.
+        (+[IFWebDataSource _canShowMIMEType:]):
+	Use the new _IF_objectForMIMEType to simplify and use hash table
+	instead of linear search.
+        * WebView.subproj/IFWebView.mm:
+        (+[IFWebView registerViewClass:forMIMEType:]):
+	Use self instead of [self class].
+        (+[IFWebView createViewForMIMEType:]):
+	Use the new _IF_objectForMIMEType to simplify and use hash table
+	instead of linear search.
+        * WebView.subproj/IFWebViewPrivate.mm:
+        (+[IFWebView _canShowMIMEType:]):
+	Use the new _IF_objectForMIMEType to simplify and use hash table
+	instead of linear search.
+
+2002-07-12  Darin Adler  <darin at apple.com>
+
         * WebKit.pbproj/project.pbxproj: Re-added JavaScriptCore, which
 	I removed by accident.
 
diff --git a/WebKit/WebView.subproj/IFWebDataSource.mm b/WebKit/WebView.subproj/IFWebDataSource.mm
index 8bb2050..dc3a26a 100644
--- a/WebKit/WebView.subproj/IFWebDataSource.mm
+++ b/WebKit/WebView.subproj/IFWebDataSource.mm
@@ -16,6 +16,7 @@
 
 #import <WebFoundation/WebFoundation.h>
 #import <WebFoundation/IFFileTypeMappings.h>
+#import <WebFoundation/IFNSDictionaryExtensions.h>
 
 #import <xml/dom_docimpl.h>
 
@@ -342,34 +343,14 @@
 
 + (void)registerRepresentationClass:(Class)repClass forMIMEType:(NSString *)MIMEType
 {
-    NSMutableDictionary *repTypes = [[self class] _repTypes];
-        
     // FIXME: OK to allow developers to override built-in reps?
-    [repTypes setObject:repClass forKey:MIMEType];
+    [[self _repTypes] setObject:repClass forKey:MIMEType];
 }
 
 + (id <IFDocumentRepresentation>) createRepresentationForMIMEType:(NSString *)MIMEType
 {
-    NSMutableDictionary *repTypes = [[self class] _repTypes];
-    Class repClass;
-    NSArray *keys;
-    unsigned i;
-    
-    repClass = [repTypes objectForKey:MIMEType];
-    if(repClass){
-        return [[[repClass alloc] init] autorelease];
-    }else{
-        keys = [repTypes allKeys];
-        for(i=0; i<[keys count]; i++){
-            if([[keys objectAtIndex:i] hasSuffix:@"/"] && [MIMEType hasPrefix:[keys objectAtIndex:i]]){
-                repClass = [repTypes objectForKey:[keys objectAtIndex:i]];
-                return [[[repClass alloc] init] autorelease];
-            }
-        }
-    }
-    return nil;
+    Class repClass = [[self _repTypes] _IF_objectForMIMEType:MIMEType];
+    return repClass ? [[[repClass alloc] init] autorelease] : nil;
 }
 
-
-
 @end
diff --git a/WebKit/WebView.subproj/IFWebDataSourcePrivate.mm b/WebKit/WebView.subproj/IFWebDataSourcePrivate.mm
index abf4bc0..aecc462 100644
--- a/WebKit/WebView.subproj/IFWebDataSourcePrivate.mm
+++ b/WebKit/WebView.subproj/IFWebDataSourcePrivate.mm
@@ -6,6 +6,8 @@
         NSWebPageDataSource.
 */
 
+#import <WebKit/IFWebDataSourcePrivate.h>
+
 #import <WebKit/IFDocument.h>
 #import <WebKit/IFException.h>
 #import <WebKit/IFHTMLRepresentation.h>
@@ -15,19 +17,17 @@
 #import <WebKit/IFTextRepresentation.h>
 #import <WebKit/IFWebController.h>
 #import <WebKit/IFWebCoreBridge.h>
-#import <WebKit/IFWebDataSourcePrivate.h>
 #import <WebKit/IFWebFramePrivate.h>
 #import <WebKit/WebKitDebug.h>
 
 #import <WebFoundation/IFError.h>
+#import <WebFoundation/IFNSDictionaryExtensions.h>
 #import <WebFoundation/IFNSStringExtensions.h>
 #import <WebFoundation/IFNSURLExtensions.h>
 #import <WebFoundation/IFURLHandle.h>
 
 #import <kurl.h>
 
-static NSMutableDictionary *_repTypes=nil;
-
 @implementation IFWebDataSourcePrivate 
 
 - init
@@ -348,39 +348,26 @@ static NSMutableDictionary *_repTypes=nil;
     [_private->errors setObject: error forKey: resourceDescription];
 }
 
-
 + (NSMutableDictionary *)_repTypes
 {
-    if(!_repTypes){
-        _repTypes = [[NSMutableDictionary dictionary] retain];
-        [_repTypes setObject:[IFHTMLRepresentation class]  forKey:@"text/html"];
-        [_repTypes setObject:[IFImageRepresentation class] forKey:@"image/jpeg"];
-        [_repTypes setObject:[IFImageRepresentation class] forKey:@"image/gif"];
-        [_repTypes setObject:[IFImageRepresentation class] forKey:@"image/png"];
-        [_repTypes setObject:[IFTextRepresentation class] forKey:@"text/"];
+    static NSMutableDictionary *repTypes = nil;
+
+    if (!repTypes) {
+        repTypes = [[NSMutableDictionary alloc] initWithObjectsAndKeys:
+            [IFHTMLRepresentation class], @"text/html",
+            [IFImageRepresentation class], @"image/jpeg",
+            [IFImageRepresentation class], @"image/gif",
+            [IFImageRepresentation class], @"image/png",
+            [IFTextRepresentation class], @"text/",
+            nil];
     }
-    return _repTypes;
+    
+    return repTypes;
 }
 
 + (BOOL)_canShowMIMEType:(NSString *)MIMEType
 {
-    NSMutableDictionary *repTypes = [[self class] _repTypes];
-    NSArray *keys;
-    unsigned i;
-    
-    if([repTypes objectForKey:MIMEType]){
-        return YES;
-    }else{
-        keys = [repTypes allKeys];
-        for(i=0; i<[keys count]; i++){
-            if([[keys objectAtIndex:i] hasSuffix:@"/"] && [MIMEType hasPrefix:[keys objectAtIndex:i]]){
-                if([repTypes objectForKey:[keys objectAtIndex:i]]){
-                    return YES;
-                }
-            }
-        }
-    }
-    return NO;
+    return [[self _repTypes] _IF_objectForMIMEType:MIMEType] != nil;
 }
 
 @end
diff --git a/WebKit/WebView.subproj/IFWebView.mm b/WebKit/WebView.subproj/IFWebView.mm
index 077e00a..8b34507 100644
--- a/WebKit/WebView.subproj/IFWebView.mm
+++ b/WebKit/WebView.subproj/IFWebView.mm
@@ -1,11 +1,13 @@
 /*	IFWebView.mm
-	Copyright 2001, Apple, Inc. All rights reserved.
+	Copyright 2001, 2002, Apple Computer, Inc. All rights reserved.
 */
+
+#import <WebKit/IFWebView.h>
+
 #import <WebKit/IFDynamicScrollBarsView.h>
 #import <WebKit/IFHTMLView.h>
 #import <WebKit/IFImageView.h>
 #import <WebKit/IFTextView.h>
-#import <WebKit/IFWebView.h>
 #import <WebKit/IFWebViewPrivate.h>
 #import <WebKit/IFWebController.h>
 #import <WebKit/IFWebCoreViewFactory.h>
@@ -16,6 +18,7 @@
 #import <WebKit/IFImageRendererFactory.h>
 #import <WebKit/IFCookieAdapter.h>
 
+#import <WebFoundation/IFNSDictionaryExtensions.h>
 #import <WebFoundation/IFNSStringExtensions.h>
 #import <WebFoundation/IFNSURLExtensions.h>
 #import <WebFoundation/WebFoundation.h>
@@ -175,32 +178,14 @@
 
 + (void) registerViewClass:(Class)viewClass forMIMEType:(NSString *)MIMEType
 {
-    NSMutableDictionary *viewTypes = [[self class] _viewTypes];
-        
     // FIXME: OK to allow developers to override built-in views?
-    [viewTypes setObject:viewClass forKey:MIMEType];
+    [[self _viewTypes] setObject:viewClass forKey:MIMEType];
 }
 
 + (id <IFDocumentLoading>) createViewForMIMEType:(NSString *)MIMEType
 {
-    NSMutableDictionary *viewTypes = [[self class] _viewTypes];
-    Class viewClass;
-    NSArray *keys;
-    unsigned i;
-    
-    viewClass = [viewTypes objectForKey:MIMEType];
-    if(viewClass){
-        return [[[viewClass alloc] initWithFrame:NSMakeRect(0,0,0,0)] autorelease];
-    }else{
-        keys = [viewTypes allKeys];
-        for(i=0; i<[keys count]; i++){
-            if([[keys objectAtIndex:i] hasSuffix:@"/"] && [MIMEType hasPrefix:[keys objectAtIndex:i]]){
-                viewClass = [viewTypes objectForKey:[keys objectAtIndex:i]];
-                return [[[viewClass alloc] initWithFrame:NSMakeRect(0,0,0,0)] autorelease];
-            }
-        }
-    }
-    return nil;
+    Class viewClass = [[self _viewTypes] _IF_objectForMIMEType:MIMEType];
+    return viewClass ? [[[viewClass alloc] init] autorelease] : nil;
 }
 
 -(BOOL)acceptsFirstResponder
diff --git a/WebKit/WebView.subproj/IFWebViewPrivate.mm b/WebKit/WebView.subproj/IFWebViewPrivate.mm
index 35af3c7..4605fc9 100644
--- a/WebKit/WebView.subproj/IFWebViewPrivate.mm
+++ b/WebKit/WebView.subproj/IFWebViewPrivate.mm
@@ -5,14 +5,18 @@
         in WebCore.  Instances of this class are referenced by _private in 
         NSWebPageView.
 */
+
+#import <WebKit/IFWebViewPrivate.h>
+
 #import <WebKit/WebKitDebug.h>
 #import <WebKit/IFDynamicScrollBarsView.h>
-#import <WebKit/IFWebViewPrivate.h>
 #import <WebKit/IFWebController.h>
 #import <WebKit/IFHTMLView.h>
 #import <WebKit/IFImageView.h>
 #import <WebKit/IFTextView.h>
 
+#import <WebFoundation/IFNSDictionaryExtensions.h>
+
 @implementation IFWebViewPrivate
 
 - init
@@ -216,26 +220,9 @@
     return viewTypes;
 }
 
-
 + (BOOL)_canShowMIMEType:(NSString *)MIMEType
 {
-    NSDictionary *viewTypes = [[self class] _viewTypes];
-    NSArray *keys;
-    unsigned i;
-    
-    if([viewTypes objectForKey:MIMEType]){
-        return YES;
-    }else{
-        keys = [viewTypes allKeys];
-        for(i=0; i<[keys count]; i++){
-            if([[keys objectAtIndex:i] hasSuffix:@"/"] && [MIMEType hasPrefix:[keys objectAtIndex:i]]){
-                if([viewTypes objectForKey:[keys objectAtIndex:i]]){
-                    return YES;
-                }
-            }
-        }
-    }
-    return NO;
+    return [[self _viewTypes] _IF_objectForMIMEType:MIMEType] != nil;
 }
 
 - (void)_goBack
diff --git a/WebKit/WebView.subproj/WebDataSource.m b/WebKit/WebView.subproj/WebDataSource.m
index 8bb2050..dc3a26a 100644
--- a/WebKit/WebView.subproj/WebDataSource.m
+++ b/WebKit/WebView.subproj/WebDataSource.m
@@ -16,6 +16,7 @@
 
 #import <WebFoundation/WebFoundation.h>
 #import <WebFoundation/IFFileTypeMappings.h>
+#import <WebFoundation/IFNSDictionaryExtensions.h>
 
 #import <xml/dom_docimpl.h>
 
@@ -342,34 +343,14 @@
 
 + (void)registerRepresentationClass:(Class)repClass forMIMEType:(NSString *)MIMEType
 {
-    NSMutableDictionary *repTypes = [[self class] _repTypes];
-        
     // FIXME: OK to allow developers to override built-in reps?
-    [repTypes setObject:repClass forKey:MIMEType];
+    [[self _repTypes] setObject:repClass forKey:MIMEType];
 }
 
 + (id <IFDocumentRepresentation>) createRepresentationForMIMEType:(NSString *)MIMEType
 {
-    NSMutableDictionary *repTypes = [[self class] _repTypes];
-    Class repClass;
-    NSArray *keys;
-    unsigned i;
-    
-    repClass = [repTypes objectForKey:MIMEType];
-    if(repClass){
-        return [[[repClass alloc] init] autorelease];
-    }else{
-        keys = [repTypes allKeys];
-        for(i=0; i<[keys count]; i++){
-            if([[keys objectAtIndex:i] hasSuffix:@"/"] && [MIMEType hasPrefix:[keys objectAtIndex:i]]){
-                repClass = [repTypes objectForKey:[keys objectAtIndex:i]];
-                return [[[repClass alloc] init] autorelease];
-            }
-        }
-    }
-    return nil;
+    Class repClass = [[self _repTypes] _IF_objectForMIMEType:MIMEType];
+    return repClass ? [[[repClass alloc] init] autorelease] : nil;
 }
 
-
-
 @end
diff --git a/WebKit/WebView.subproj/WebDataSourcePrivate.m b/WebKit/WebView.subproj/WebDataSourcePrivate.m
index abf4bc0..aecc462 100644
--- a/WebKit/WebView.subproj/WebDataSourcePrivate.m
+++ b/WebKit/WebView.subproj/WebDataSourcePrivate.m
@@ -6,6 +6,8 @@
         NSWebPageDataSource.
 */
 
+#import <WebKit/IFWebDataSourcePrivate.h>
+
 #import <WebKit/IFDocument.h>
 #import <WebKit/IFException.h>
 #import <WebKit/IFHTMLRepresentation.h>
@@ -15,19 +17,17 @@
 #import <WebKit/IFTextRepresentation.h>
 #import <WebKit/IFWebController.h>
 #import <WebKit/IFWebCoreBridge.h>
-#import <WebKit/IFWebDataSourcePrivate.h>
 #import <WebKit/IFWebFramePrivate.h>
 #import <WebKit/WebKitDebug.h>
 
 #import <WebFoundation/IFError.h>
+#import <WebFoundation/IFNSDictionaryExtensions.h>
 #import <WebFoundation/IFNSStringExtensions.h>
 #import <WebFoundation/IFNSURLExtensions.h>
 #import <WebFoundation/IFURLHandle.h>
 
 #import <kurl.h>
 
-static NSMutableDictionary *_repTypes=nil;
-
 @implementation IFWebDataSourcePrivate 
 
 - init
@@ -348,39 +348,26 @@ static NSMutableDictionary *_repTypes=nil;
     [_private->errors setObject: error forKey: resourceDescription];
 }
 
-
 + (NSMutableDictionary *)_repTypes
 {
-    if(!_repTypes){
-        _repTypes = [[NSMutableDictionary dictionary] retain];
-        [_repTypes setObject:[IFHTMLRepresentation class]  forKey:@"text/html"];
-        [_repTypes setObject:[IFImageRepresentation class] forKey:@"image/jpeg"];
-        [_repTypes setObject:[IFImageRepresentation class] forKey:@"image/gif"];
-        [_repTypes setObject:[IFImageRepresentation class] forKey:@"image/png"];
-        [_repTypes setObject:[IFTextRepresentation class] forKey:@"text/"];
+    static NSMutableDictionary *repTypes = nil;
+
+    if (!repTypes) {
+        repTypes = [[NSMutableDictionary alloc] initWithObjectsAndKeys:
+            [IFHTMLRepresentation class], @"text/html",
+            [IFImageRepresentation class], @"image/jpeg",
+            [IFImageRepresentation class], @"image/gif",
+            [IFImageRepresentation class], @"image/png",
+            [IFTextRepresentation class], @"text/",
+            nil];
     }
-    return _repTypes;
+    
+    return repTypes;
 }
 
 + (BOOL)_canShowMIMEType:(NSString *)MIMEType
 {
-    NSMutableDictionary *repTypes = [[self class] _repTypes];
-    NSArray *keys;
-    unsigned i;
-    
-    if([repTypes objectForKey:MIMEType]){
-        return YES;
-    }else{
-        keys = [repTypes allKeys];
-        for(i=0; i<[keys count]; i++){
-            if([[keys objectAtIndex:i] hasSuffix:@"/"] && [MIMEType hasPrefix:[keys objectAtIndex:i]]){
-                if([repTypes objectForKey:[keys objectAtIndex:i]]){
-                    return YES;
-                }
-            }
-        }
-    }
-    return NO;
+    return [[self _repTypes] _IF_objectForMIMEType:MIMEType] != nil;
 }
 
 @end
diff --git a/WebKit/WebView.subproj/WebFrameView.m b/WebKit/WebView.subproj/WebFrameView.m
index 077e00a..8b34507 100644
--- a/WebKit/WebView.subproj/WebFrameView.m
+++ b/WebKit/WebView.subproj/WebFrameView.m
@@ -1,11 +1,13 @@
 /*	IFWebView.mm
-	Copyright 2001, Apple, Inc. All rights reserved.
+	Copyright 2001, 2002, Apple Computer, Inc. All rights reserved.
 */
+
+#import <WebKit/IFWebView.h>
+
 #import <WebKit/IFDynamicScrollBarsView.h>
 #import <WebKit/IFHTMLView.h>
 #import <WebKit/IFImageView.h>
 #import <WebKit/IFTextView.h>
-#import <WebKit/IFWebView.h>
 #import <WebKit/IFWebViewPrivate.h>
 #import <WebKit/IFWebController.h>
 #import <WebKit/IFWebCoreViewFactory.h>
@@ -16,6 +18,7 @@
 #import <WebKit/IFImageRendererFactory.h>
 #import <WebKit/IFCookieAdapter.h>
 
+#import <WebFoundation/IFNSDictionaryExtensions.h>
 #import <WebFoundation/IFNSStringExtensions.h>
 #import <WebFoundation/IFNSURLExtensions.h>
 #import <WebFoundation/WebFoundation.h>
@@ -175,32 +178,14 @@
 
 + (void) registerViewClass:(Class)viewClass forMIMEType:(NSString *)MIMEType
 {
-    NSMutableDictionary *viewTypes = [[self class] _viewTypes];
-        
     // FIXME: OK to allow developers to override built-in views?
-    [viewTypes setObject:viewClass forKey:MIMEType];
+    [[self _viewTypes] setObject:viewClass forKey:MIMEType];
 }
 
 + (id <IFDocumentLoading>) createViewForMIMEType:(NSString *)MIMEType
 {
-    NSMutableDictionary *viewTypes = [[self class] _viewTypes];
-    Class viewClass;
-    NSArray *keys;
-    unsigned i;
-    
-    viewClass = [viewTypes objectForKey:MIMEType];
-    if(viewClass){
-        return [[[viewClass alloc] initWithFrame:NSMakeRect(0,0,0,0)] autorelease];
-    }else{
-        keys = [viewTypes allKeys];
-        for(i=0; i<[keys count]; i++){
-            if([[keys objectAtIndex:i] hasSuffix:@"/"] && [MIMEType hasPrefix:[keys objectAtIndex:i]]){
-                viewClass = [viewTypes objectForKey:[keys objectAtIndex:i]];
-                return [[[viewClass alloc] initWithFrame:NSMakeRect(0,0,0,0)] autorelease];
-            }
-        }
-    }
-    return nil;
+    Class viewClass = [[self _viewTypes] _IF_objectForMIMEType:MIMEType];
+    return viewClass ? [[[viewClass alloc] init] autorelease] : nil;
 }
 
 -(BOOL)acceptsFirstResponder
diff --git a/WebKit/WebView.subproj/WebFrameViewPrivate.m b/WebKit/WebView.subproj/WebFrameViewPrivate.m
index 35af3c7..4605fc9 100644
--- a/WebKit/WebView.subproj/WebFrameViewPrivate.m
+++ b/WebKit/WebView.subproj/WebFrameViewPrivate.m
@@ -5,14 +5,18 @@
         in WebCore.  Instances of this class are referenced by _private in 
         NSWebPageView.
 */
+
+#import <WebKit/IFWebViewPrivate.h>
+
 #import <WebKit/WebKitDebug.h>
 #import <WebKit/IFDynamicScrollBarsView.h>
-#import <WebKit/IFWebViewPrivate.h>
 #import <WebKit/IFWebController.h>
 #import <WebKit/IFHTMLView.h>
 #import <WebKit/IFImageView.h>
 #import <WebKit/IFTextView.h>
 
+#import <WebFoundation/IFNSDictionaryExtensions.h>
+
 @implementation IFWebViewPrivate
 
 - init
@@ -216,26 +220,9 @@
     return viewTypes;
 }
 
-
 + (BOOL)_canShowMIMEType:(NSString *)MIMEType
 {
-    NSDictionary *viewTypes = [[self class] _viewTypes];
-    NSArray *keys;
-    unsigned i;
-    
-    if([viewTypes objectForKey:MIMEType]){
-        return YES;
-    }else{
-        keys = [viewTypes allKeys];
-        for(i=0; i<[keys count]; i++){
-            if([[keys objectAtIndex:i] hasSuffix:@"/"] && [MIMEType hasPrefix:[keys objectAtIndex:i]]){
-                if([viewTypes objectForKey:[keys objectAtIndex:i]]){
-                    return YES;
-                }
-            }
-        }
-    }
-    return NO;
+    return [[self _viewTypes] _IF_objectForMIMEType:MIMEType] != nil;
 }
 
 - (void)_goBack

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list