Changeset 66676 in webkit
- Timestamp:
- Sep 2, 2010 11:32:14 AM (14 years ago)
- Location:
- trunk/WebKit2
- Files:
-
- 4 added
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/WebKit2/ChangeLog
r66673 r66676 1 2010-09-02 Sam Weinig <sam@webkit.org> 2 3 Reviewed by Anders Carlsson. 4 5 Add WKMutableDictionary API for WebKit2 6 https://bugs.webkit.org/show_bug.cgi?id=45117 7 8 Add WKMutableDictionary API that inherits from WKDictionaryRef 9 the same way WKMutableArrayRef inherits from WKArrayRef. 10 11 * Shared/ImmutableDictionary.h: 12 (WebKit::ImmutableDictionary::get): 13 (WebKit::ImmutableDictionary::isMutable): 14 * Shared/MutableDictionary.cpp: Added. 15 (WebKit::MutableDictionary::MutableDictionary): 16 (WebKit::MutableDictionary::~MutableDictionary): 17 (WebKit::MutableDictionary::add): 18 (WebKit::MutableDictionary::set): 19 * Shared/MutableDictionary.h: Added. 20 (WebKit::MutableDictionary::create): 21 (WebKit::MutableDictionary::isMutable): 22 * UIProcess/API/C/WKAPICast.h: 23 (toWK): 24 * UIProcess/API/C/WKBase.h: 25 * UIProcess/API/C/WKMutableDictionary.cpp: Added. 26 (WKMutableDictionaryCreate): 27 (WKDictionaryIsMutable): 28 (WKDictionaryAddItem): 29 (WKDictionarySetItem): 30 * UIProcess/API/C/WKMutableDictionary.h: Added. 31 * UIProcess/API/C/WebKit2.h: 32 * WebKit2.pro: 33 * WebKit2.xcodeproj/project.pbxproj: 34 * win/WebKit2.vcproj: 35 * win/WebKit2Generated.make: 36 1 37 2010-09-02 Jessie Berlin <jberlin@apple.com> 2 38 -
trunk/WebKit2/Shared/ImmutableDictionary.h
r65675 r66676 43 43 static const Type APIType = TypeDictionary; 44 44 45 typedef HashMap< WTF::String, RefPtr<APIObject> > MapType;45 typedef HashMap<String, RefPtr<APIObject> > MapType; 46 46 47 47 static PassRefPtr<ImmutableDictionary> create() … … 56 56 57 57 template<typename T> 58 T* get(const WTF::String& key)58 T* get(const String& key) 59 59 { 60 60 RefPtr<APIObject> item = m_map.get(key); … … 68 68 } 69 69 70 APIObject* get(const WTF::String& key)70 APIObject* get(const String& key) 71 71 { 72 72 return m_map.get(key).get(); … … 77 77 size_t size() { return m_map.size(); } 78 78 79 private: 79 virtual bool isMutable() { return false; } 80 81 protected: 80 82 ImmutableDictionary(); 81 83 enum AdoptTag { Adopt }; -
trunk/WebKit2/UIProcess/API/C/WKAPICast.h
r66638 r66676 44 44 class ImmutableDictionary; 45 45 class MutableArray; 46 class MutableDictionary; 46 47 class WebBackForwardList; 47 48 class WebBackForwardListItem; … … 70 71 template<> struct APITypeInfo<WKFrameRef> { typedef WebFrameProxy* ImplType; }; 71 72 template<> struct APITypeInfo<WKMutableArrayRef> { typedef MutableArray* ImplType; }; 73 template<> struct APITypeInfo<WKMutableDictionaryRef> { typedef MutableDictionary* ImplType; }; 72 74 template<> struct APITypeInfo<WKNavigationDataRef> { typedef WebNavigationData* ImplType; }; 73 75 template<> struct APITypeInfo<WKPageNamespaceRef> { typedef WebPageNamespace* ImplType; }; … … 86 88 template<> struct ImplTypeInfo<ImmutableDictionary*> { typedef WKDictionaryRef APIType; }; 87 89 template<> struct ImplTypeInfo<MutableArray*> { typedef WKMutableArrayRef APIType; }; 90 template<> struct ImplTypeInfo<MutableDictionary*> { typedef WKMutableDictionaryRef APIType; }; 88 91 template<> struct ImplTypeInfo<WebBackForwardList*> { typedef WKBackForwardListRef APIType; }; 89 92 template<> struct ImplTypeInfo<WebBackForwardListItem*> { typedef WKBackForwardListItemRef APIType; }; … … 125 128 inline typename WebKit::APITypeInfo<T>::ImplType toWK(T t) 126 129 { 130 // An example of the conversions that take place: 127 131 // const struct OpaqueWKArray* -> const struct OpaqueWKArray -> struct OpaqueWKArray -> struct OpaqueWKArray* -> ImmutableArray* 128 132 -
trunk/WebKit2/UIProcess/API/C/WKBase.h
r66639 r66676 39 39 typedef struct OpaqueWKArray* WKMutableArrayRef; 40 40 41 typedef const struct OpaqueWKDictionary* WKDictionaryRef; 42 typedef struct OpaqueWKDictionary* WKMutableDictionaryRef; 43 41 44 typedef const struct OpaqueWKBackForwardList* WKBackForwardListRef; 42 45 typedef const struct OpaqueWKBackForwardListItem* WKBackForwardListItemRef; 43 46 typedef const struct OpaqueWKContext* WKContextRef; 44 47 typedef const struct OpaqueWKData* WKDataRef; 45 typedef const struct OpaqueWKDictionary* WKDictionaryRef;46 48 typedef const struct OpaqueWKError* WKErrorRef; 47 49 typedef const struct OpaqueWKFormSubmissionListener* WKFormSubmissionListenerRef; -
trunk/WebKit2/UIProcess/API/C/WebKit2.h
r66436 r66676 35 35 #include <WebKit2/WKContext.h> 36 36 #include <WebKit2/WKData.h> 37 #include <WebKit2/WKDictionary.h>38 37 #include <WebKit2/WKError.h> 39 38 #include <WebKit2/WKFormSubmissionListener.h> 40 39 #include <WebKit2/WKFrame.h> 41 40 #include <WebKit2/WKFramePolicyListener.h> 41 #include <WebKit2/WKMutableArray.h> 42 #include <WebKit2/WKMutableDictionary.h> 42 43 #include <WebKit2/WKNavigationData.h> 43 44 #include <WebKit2/WKPage.h> … … 47 48 #include <WebKit2/WKURL.h> 48 49 #include <WebKit2/WKURLRequest.h> 50 #include <WebKit2/WKURLResponse.h> 49 51 50 52 #if !__APPLE__ || __OBJC__ -
trunk/WebKit2/WebKit2.pro
r66638 r66676 160 160 Shared/ImmutableDictionary.h \ 161 161 Shared/MutableArray.h \ 162 Shared/MutableDictionary.h \ 162 163 Shared/NotImplemented.h \ 163 164 Shared/qt/WebEventFactoryQt.h \ … … 270 271 Shared/ImmutableDictionary.cpp \ 271 272 Shared/MutableArray.cpp \ 273 Shared/MutableDictionary.cpp \ 272 274 Shared/VisitedLinkTable.cpp \ 273 275 Shared/WebEventConversion.cpp \ -
trunk/WebKit2/WebKit2.xcodeproj/project.pbxproj
r66638 r66676 252 252 BCB0AD33122F285800B1341E /* MutableArray.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCC8049D122F0D6B00103529 /* MutableArray.cpp */; }; 253 253 BCB0AD34122F285800B1341E /* MutableArray.h in Headers */ = {isa = PBXBuildFile; fileRef = BCC8049E122F0D6B00103529 /* MutableArray.h */; }; 254 BCB0AEE9122F53E300B1341E /* MutableDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = BCB0AEE7122F53E300B1341E /* MutableDictionary.h */; }; 255 BCB0AEEA122F53E300B1341E /* MutableDictionary.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCB0AEE8122F53E300B1341E /* MutableDictionary.cpp */; }; 256 BCB0AF3512301DFB00B1341E /* WKMutableDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = BCB0AF3312301DFB00B1341E /* WKMutableDictionary.h */; settings = {ATTRIBUTES = (Public, ); }; }; 257 BCB0AF3612301DFB00B1341E /* WKMutableDictionary.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCB0AF3412301DFB00B1341E /* WKMutableDictionary.cpp */; }; 254 258 BCB28CC0120233D9007D99BC /* InjectedBundleMessageKinds.h in Headers */ = {isa = PBXBuildFile; fileRef = BCB28CBF120233D9007D99BC /* InjectedBundleMessageKinds.h */; }; 255 259 BCB63478116BF10600603215 /* WebKit2.h in Headers */ = {isa = PBXBuildFile; fileRef = BCB63477116BF10600603215 /* WebKit2.h */; settings = {ATTRIBUTES = (Public, ); }; }; … … 611 615 BCA8C9DA11E4086500812FB7 /* WebBackForwardControllerClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebBackForwardControllerClient.h; sourceTree = "<group>"; }; 612 616 BCA8C9DB11E4086500812FB7 /* WebBackForwardControllerClient.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebBackForwardControllerClient.cpp; sourceTree = "<group>"; }; 617 BCB0AEE7122F53E300B1341E /* MutableDictionary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MutableDictionary.h; sourceTree = "<group>"; }; 618 BCB0AEE8122F53E300B1341E /* MutableDictionary.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MutableDictionary.cpp; sourceTree = "<group>"; }; 619 BCB0AF3312301DFB00B1341E /* WKMutableDictionary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKMutableDictionary.h; sourceTree = "<group>"; }; 620 BCB0AF3412301DFB00B1341E /* WKMutableDictionary.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKMutableDictionary.cpp; sourceTree = "<group>"; }; 613 621 BCB28CBF120233D9007D99BC /* InjectedBundleMessageKinds.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InjectedBundleMessageKinds.h; sourceTree = "<group>"; }; 614 622 BCB63477116BF10600603215 /* WebKit2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebKit2.h; sourceTree = "<group>"; }; … … 901 909 BCC8049D122F0D6B00103529 /* MutableArray.cpp */, 902 910 BCC8049E122F0D6B00103529 /* MutableArray.h */, 911 BCB0AEE8122F53E300B1341E /* MutableDictionary.cpp */, 912 BCB0AEE7122F53E300B1341E /* MutableDictionary.h */, 903 913 BCC57161115ADB42001CCAF9 /* NotImplemented.h */, 904 914 1A0F29C9120B37160053D1B9 /* VisitedLinkTable.cpp */, … … 1139 1149 BCC804A2122F0E7B00103529 /* WKMutableArray.cpp */, 1140 1150 BCC804A1122F0E7B00103529 /* WKMutableArray.h */, 1151 BCB0AF3412301DFB00B1341E /* WKMutableDictionary.cpp */, 1152 BCB0AF3312301DFB00B1341E /* WKMutableDictionary.h */, 1141 1153 BCF69FA81176D1CB00471A52 /* WKNavigationData.cpp */, 1142 1154 BCF69FA71176D1CB00471A52 /* WKNavigationData.h */, … … 1571 1583 BCB0AD2D122F284300B1341E /* WKMutableArray.h in Headers */, 1572 1584 BCB0AD34122F285800B1341E /* MutableArray.h in Headers */, 1585 BCB0AEE9122F53E300B1341E /* MutableDictionary.h in Headers */, 1586 BCB0AF3512301DFB00B1341E /* WKMutableDictionary.h in Headers */, 1573 1587 ); 1574 1588 runOnlyForDeploymentPostprocessing = 0; … … 1805 1819 BCB0AD2E122F284700B1341E /* WKMutableArray.cpp in Sources */, 1806 1820 BCB0AD33122F285800B1341E /* MutableArray.cpp in Sources */, 1821 BCB0AEEA122F53E300B1341E /* MutableDictionary.cpp in Sources */, 1822 BCB0AF3612301DFB00B1341E /* WKMutableDictionary.cpp in Sources */, 1807 1823 ); 1808 1824 runOnlyForDeploymentPostprocessing = 0; -
trunk/WebKit2/win/WebKit2.vcproj
r66638 r66676 434 434 </File> 435 435 <File 436 RelativePath="..\Shared\MutableDictionary.cpp" 437 > 438 </File> 439 <File 440 RelativePath="..\Shared\MutableDictionary.h" 441 > 442 </File> 443 <File 436 444 RelativePath="..\Shared\NotImplemented.h" 437 445 > … … 1337 1345 <File 1338 1346 RelativePath="..\UIProcess\API\C\WKMutableArray.h" 1347 > 1348 </File> 1349 <File 1350 RelativePath="..\UIProcess\API\C\WKMutableDictionary.cpp" 1351 > 1352 </File> 1353 <File 1354 RelativePath="..\UIProcess\API\C\WKMutableDictionary.h" 1339 1355 > 1340 1356 </File> -
trunk/WebKit2/win/WebKit2Generated.make
r66638 r66676 17 17 xcopy /y /d "..\UIProcess\API\C\WKNavigationData.h" "$(WEBKITOUTPUTDIR)\include\WebKit2" 18 18 xcopy /y /d "..\UIProcess\API\C\WKMutableArray.h" "$(WEBKITOUTPUTDIR)\include\WebKit2" 19 xcopy /y /d "..\UIProcess\API\C\WKMutableDictionary.h" "$(WEBKITOUTPUTDIR)\include\WebKit2" 19 20 xcopy /y /d "..\UIProcess\API\C\WKPage.h" "$(WEBKITOUTPUTDIR)\include\WebKit2" 20 21 xcopy /y /d "..\UIProcess\API\C\WKPageNamespace.h" "$(WEBKITOUTPUTDIR)\include\WebKit2"
Note: See TracChangeset
for help on using the changeset viewer.