Changeset 61444 in webkit
- Timestamp:
- Jun 18, 2010 3:08:45 PM (14 years ago)
- Location:
- trunk
- Files:
-
- 1 deleted
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/WebCore/ChangeLog
r61441 r61444 1 2010-06-18 Anders Carlsson <andersca@apple.com> 2 3 Reviewed by Darin Adler. 4 5 Get rid of PluginDataMac.mm and use the plug-in strategy instead 6 https://bugs.webkit.org/show_bug.cgi?id=40860 7 8 * WebCore.xcodeproj/project.pbxproj: 9 * page/mac/WebCoreViewFactory.h: 10 * plugins/PluginData.cpp: 11 (WebCore::PluginData::refresh): 12 (WebCore::PluginData::initPlugins): 13 * plugins/PluginStrategy.h: 14 * plugins/mac/PluginDataMac.mm: Removed. 15 1 16 2010-06-18 Anders Carlsson <andersca@apple.com> 2 17 -
trunk/WebCore/WebCore.xcodeproj/project.pbxproj
r61429 r61444 3461 3461 A9C6E4F30D745E48006442E9 /* PluginData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A9C6E4F10D745E48006442E9 /* PluginData.cpp */; }; 3462 3462 A9C6E4F40D745E48006442E9 /* PluginData.h in Headers */ = {isa = PBXBuildFile; fileRef = A9C6E4F20D745E48006442E9 /* PluginData.h */; settings = {ATTRIBUTES = (Private, ); }; }; 3463 A9C6E4F60D745E61006442E9 /* PluginDataMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = A9C6E4F50D745E61006442E9 /* PluginDataMac.mm */; };3464 3463 A9C6E5A50D746458006442E9 /* Navigator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A9C6E5A30D746458006442E9 /* Navigator.cpp */; }; 3465 3464 A9C6E5A60D746458006442E9 /* Navigator.h in Headers */ = {isa = PBXBuildFile; fileRef = A9C6E5A40D746458006442E9 /* Navigator.h */; }; … … 8795 8794 A9C6E4F10D745E48006442E9 /* PluginData.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = PluginData.cpp; sourceTree = "<group>"; }; 8796 8795 A9C6E4F20D745E48006442E9 /* PluginData.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = PluginData.h; sourceTree = "<group>"; }; 8797 A9C6E4F50D745E61006442E9 /* PluginDataMac.mm */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.objcpp; name = PluginDataMac.mm; path = mac/PluginDataMac.mm; sourceTree = "<group>"; };8798 8796 A9C6E5A30D746458006442E9 /* Navigator.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = Navigator.cpp; sourceTree = "<group>"; }; 8799 8797 A9C6E5A40D746458006442E9 /* Navigator.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = Navigator.h; sourceTree = "<group>"; }; … … 11824 11822 A9C6E4F10D745E48006442E9 /* PluginData.cpp */, 11825 11823 A9C6E4F20D745E48006442E9 /* PluginData.h */, 11826 A9C6E4F50D745E61006442E9 /* PluginDataMac.mm */,11827 11824 1ADA140E0E1AE5D900023EE5 /* PluginMainThreadScheduler.cpp */, 11828 11825 1ADA140F0E1AE5D900023EE5 /* PluginMainThreadScheduler.h */, … … 21137 21134 A9C6E4EF0D745E38006442E9 /* PluginArray.cpp in Sources */, 21138 21135 A9C6E4F30D745E48006442E9 /* PluginData.cpp in Sources */, 21139 A9C6E4F60D745E61006442E9 /* PluginDataMac.mm in Sources */,21140 21136 1AC694C70A3B1676003F5049 /* PluginDocument.cpp in Sources */, 21141 21137 7693BAD3106C2DCA007B0823 /* PluginHalter.cpp in Sources */, -
trunk/WebCore/page/mac/WebCoreViewFactory.h
r57095 r61444 28 28 29 29 @protocol WebCoreViewFactory 30 31 - (NSArray *)pluginsInfo; // array of id <WebCorePluginInfo>32 - (void)refreshPlugins;33 30 34 31 - (NSString *)inputElementAltText; … … 172 169 @interface WebCoreViewFactory (SubclassResponsibility) <WebCoreViewFactory> 173 170 @end 174 175 @protocol WebCorePluginInfo <NSObject>176 - (NSString *)name;177 - (NSString *)filename;178 - (NSString *)pluginDescription;179 - (NSEnumerator *)MIMETypeEnumerator;180 - (NSString *)descriptionForMIMEType:(NSString *)MIMEType;181 - (NSArray *)extensionsForMIMEType:(NSString *)MIMEType;182 @end183 -
trunk/WebCore/plugins/PluginData.cpp
r61429 r61444 25 25 #include "PluginData.h" 26 26 27 #if USE(PLATFORM_STRATEGIES) 27 28 #include "PlatformStrategies.h" 28 29 #include "PluginStrategy.h" 30 #endif 29 31 30 32 namespace WebCore { … … 64 66 } 65 67 68 #if USE(PLATFORM_STRATEGIES) 69 void PluginData::refresh() 70 { 71 platformStrategies()->pluginStrategy()->refreshPlugins(); 66 72 } 73 74 void PluginData::initPlugins() 75 { 76 ASSERT(m_plugins.isEmpty()); 77 78 platformStrategies()->pluginStrategy()->getPluginInfo(m_plugins); 79 } 80 #endif 81 82 } -
trunk/WebCore/plugins/PluginStrategy.h
r61429 r61444 38 38 virtual void getPluginInfo(Vector<PluginInfo>&) = 0; 39 39 40 pr ivate:40 protected: 41 41 virtual ~PluginStrategy() { } 42 42 }; -
trunk/WebKit/mac/ChangeLog
r61438 r61444 1 2010-06-18 Anders Carlsson <andersca@apple.com> 2 3 Reviewed by Darin Adler. 4 5 Get rid of PluginDataMac.mm and use the plug-in strategy instead 6 https://bugs.webkit.org/show_bug.cgi?id=40860 7 8 * Plugins/WebBasePluginPackage.h: 9 * WebCoreSupport/WebPlatformStrategies.h: 10 * WebCoreSupport/WebPlatformStrategies.mm: 11 (WebPlatformStrategies::createPluginStrategy): 12 (WebPlatformStrategies::refreshPlugins): 13 (WebPlatformStrategies::getPluginInfo): 14 * WebCoreSupport/WebViewFactory.mm: 15 1 16 2010-06-18 Anders Carlsson <andersca@apple.com> 2 17 -
trunk/WebKit/mac/Plugins/WebBasePluginPackage.h
r31925 r61444 53 53 #define WebPluginTypeEnabledKey @"WebPluginTypeEnabled" 54 54 55 @interface WebBasePluginPackage : NSObject <WebCorePluginInfo>55 @interface WebBasePluginPackage : NSObject 56 56 { 57 57 NSMutableSet *pluginDatabases; -
trunk/WebKit/mac/WebCoreSupport/WebPlatformStrategies.h
r61438 r61444 28 28 29 29 #include <WebCore/PlatformStrategies.h> 30 #include <WebCore/PluginStrategy.h> 30 31 31 class WebPlatformStrategies : public WebCore::PlatformStrategies {32 class WebPlatformStrategies : public WebCore::PlatformStrategies, private WebCore::PluginStrategy { 32 33 public: 33 34 static void initialize(); … … 39 40 virtual WebCore::PluginStrategy* createPluginStrategy(); 40 41 42 // WebCore::PluginStrategy 43 virtual void refreshPlugins(); 44 virtual void getPluginInfo(Vector<WebCore::PluginInfo>&); 41 45 }; 42 46 -
trunk/WebKit/mac/WebCoreSupport/WebPlatformStrategies.mm
r61438 r61444 26 26 #import "WebPlatformStrategies.h" 27 27 28 #import "WebPluginDatabase.h" 29 #import "WebPluginPackage.h" 30 #import <WebCore/BlockExceptions.h> 28 31 #import <wtf/StdLibExtras.h> 29 32 … … 40 43 } 41 44 45 // PluginStrategy 46 42 47 PluginStrategy* WebPlatformStrategies::createPluginStrategy() 43 48 { 44 return 0;49 return this; 45 50 } 51 52 void WebPlatformStrategies::refreshPlugins() 53 { 54 [[WebPluginDatabase sharedDatabase] refresh]; 55 } 56 57 void WebPlatformStrategies::getPluginInfo(Vector<WebCore::PluginInfo>& plugins) 58 { 59 BEGIN_BLOCK_OBJC_EXCEPTIONS; 60 61 NSArray* pluginsArray = [[WebPluginDatabase sharedDatabase] plugins]; 62 for (unsigned int i = 0; i < [pluginsArray count]; ++i) { 63 PluginInfo pluginInfo; 64 65 WebPluginPackage *plugin = [pluginsArray objectAtIndex:i]; 66 67 pluginInfo.name = [plugin name]; 68 pluginInfo.file = [plugin filename]; 69 pluginInfo.desc = [plugin pluginDescription]; 70 71 NSEnumerator* MIMETypeEnumerator = [plugin MIMETypeEnumerator]; 72 while (NSString* MIME = [MIMETypeEnumerator nextObject]) { 73 MimeClassInfo mime; 74 75 mime.type = String(MIME).lower(); 76 77 NSArray *extensions = [plugin extensionsForMIMEType:MIME]; 78 for (NSUInteger i = 0; i < [extensions count]; ++i) { 79 NSString *extension = [extensions objectAtIndex:i]; 80 mime.extensions.append(extension); 81 } 82 83 mime.desc = [plugin descriptionForMIMEType:MIME]; 84 85 pluginInfo.mimes.append(mime); 86 } 87 88 plugins.append(pluginInfo); 89 } 90 91 END_BLOCK_OBJC_EXCEPTIONS; 92 } 93 94 -
trunk/WebKit/mac/WebCoreSupport/WebViewFactory.mm
r57095 r61444 36 36 #import <WebKit/WebNSObjectExtras.h> 37 37 #import <WebKit/WebNSViewExtras.h> 38 #import <WebKit/WebPluginDatabase.h>39 38 #import <WebKitSystemInterface.h> 40 39 #import <wtf/Assertions.h> … … 64 63 } 65 64 ASSERT([[self sharedFactory] isKindOfClass:self]); 66 }67 68 - (NSArray *)pluginsInfo69 {70 return [[WebPluginDatabase sharedDatabase] plugins];71 }72 73 - (void)refreshPlugins74 {75 [[WebPluginDatabase sharedDatabase] refresh];76 65 } 77 66
Note: See TracChangeset
for help on using the changeset viewer.