Changeset 164004 in webkit
- Timestamp:
- Feb 12, 2014 5:54:27 PM (10 years ago)
- Location:
- trunk/Source/WebKit2
- Files:
-
- 4 edited
- 1 copied
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit2/ChangeLog
r163999 r164004 1 2014-02-12 Anders Carlsson <andersca@apple.com> 2 3 Add relatedWebView property to WKWebViewConfiguration 4 https://bugs.webkit.org/show_bug.cgi?id=128707 5 6 Reviewed by Dan Bernstein. 7 8 * UIProcess/API/Cocoa/WKWebView.mm: 9 (-[WKWebView initWithFrame:configuration:]): 10 * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: 11 (-[WKWebViewConfiguration copyWithZone:]): 12 (-[WKWebViewConfiguration relatedWebView]): 13 (-[WKWebViewConfiguration setRelatedWebView:]): 14 * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKWebViewConfiguration.mm. 15 * WebKit2.xcodeproj/project.pbxproj: 16 1 17 2014-02-12 Alexey Proskuryakov <ap@apple.com> 2 18 -
trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm
r163814 r164004 38 38 #import "WKProcessClassInternal.h" 39 39 #import "WKRemoteObjectRegistryInternal.h" 40 #import "WKWebViewConfiguration .h"40 #import "WKWebViewConfigurationPrivate.h" 41 41 #import "WebContext.h" 42 42 #import "WebBackForwardList.h" … … 88 88 _configuration = adoptNS([configuration copy]); 89 89 90 if (WKWebView *relatedWebView = [_configuration _relatedWebView]) { 91 WKProcessClass *processClass = [_configuration processClass]; 92 WKProcessClass *relatedWebViewProcessClass = [relatedWebView->_configuration processClass]; 93 if (processClass && processClass != relatedWebViewProcessClass) 94 [NSException raise:NSInvalidArgumentException format:@"Related web view %@ has process class %@ but configuration specifies a different process class %@", relatedWebView, relatedWebViewProcessClass, configuration.processClass]; 95 96 [_configuration setProcessClass:relatedWebViewProcessClass]; 97 } 98 90 99 if (![_configuration processClass]) 91 100 [_configuration setProcessClass:adoptNS([[WKProcessClass alloc] init]).get()]; -
trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebViewConfiguration.mm
r163567 r164004 25 25 26 26 #import "config.h" 27 #import "WKWebViewConfiguration .h"27 #import "WKWebViewConfigurationPrivate.h" 28 28 29 29 #if WK_API_ENABLED 30 30 31 #import "WeakObjCPtr.h" 31 32 #import <wtf/RetainPtr.h> 32 33 … … 34 35 RetainPtr<WKProcessClass> _processClass; 35 36 RetainPtr<WKPreferences> _preferences; 37 WebKit::WeakObjCPtr<WKWebView> _relatedWebView; 36 38 } 37 39 … … 42 44 configuration.processClass = _processClass.get(); 43 45 configuration.preferences = _preferences.get(); 46 configuration._relatedWebView = _relatedWebView.get().get(); 44 47 45 48 return configuration; … … 66 69 } 67 70 71 - (WKWebView *)_relatedWebView 72 { 73 return _relatedWebView.getAutoreleased(); 74 } 75 76 - (void)_setRelatedWebView:(WKWebView *)relatedWebView 77 { 78 _relatedWebView = relatedWebView; 79 } 80 68 81 @end 69 82 -
trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h
r164001 r164004 24 24 */ 25 25 26 #import "config.h" 27 #import "WKWebViewConfiguration.h" 26 #import <WebKit2/WKWebViewConfiguration.h> 28 27 29 28 #if WK_API_ENABLED 30 29 31 #import <wtf/RetainPtr.h> 30 @class WKWebView; 32 31 33 @implementation WKWebViewConfiguration { 34 RetainPtr<WKProcessClass> _processClass; 35 RetainPtr<WKPreferences> _preferences; 36 } 32 @interface WKWebViewConfiguration (WKPrivate) 37 33 38 - (id)copyWithZone:(NSZone *)zone 39 { 40 WKWebViewConfiguration *configuration = [[[self class] allocWithZone:zone] init]; 41 42 configuration.processClass = _processClass.get(); 43 configuration.preferences = _preferences.get(); 44 45 return configuration; 46 } 47 48 - (WKProcessClass *)processClass 49 { 50 return _processClass.get(); 51 } 52 53 - (void)setProcessClass:(WKProcessClass *)processClass 54 { 55 _processClass = processClass; 56 } 57 58 - (WKPreferences *)preferences 59 { 60 return _preferences.get(); 61 } 62 63 - (void)setPreferences:(WKPreferences *)preferences 64 { 65 _preferences = preferences; 66 } 34 @property (nonatomic, weak, setter=_setRelatedWebView:) WKWebView *_relatedWebView; 67 35 68 36 @end 69 37 70 #endif // WK_API_ENABLED38 #endif -
trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj
r163992 r164004 316 316 1AC1338518590C4600F3EC05 /* RemoteObjectRegistryMessageReceiver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AC1338318590C4600F3EC05 /* RemoteObjectRegistryMessageReceiver.cpp */; }; 317 317 1AC1338618590C4600F3EC05 /* RemoteObjectRegistryMessages.h in Headers */ = {isa = PBXBuildFile; fileRef = 1AC1338418590C4600F3EC05 /* RemoteObjectRegistryMessages.h */; }; 318 1AC1415118AC47EE006C602C /* WKWebViewConfigurationPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 1AC1415018AC47EE006C602C /* WKWebViewConfigurationPrivate.h */; }; 318 319 1AC25FC212A48F6000BD2671 /* PluginProcessShim.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1AC25F8A12A48E0300BD2671 /* PluginProcessShim.mm */; }; 319 320 1AC4C82916B876A90069DCCD /* MessageFlags.h in Headers */ = {isa = PBXBuildFile; fileRef = 1AC4C82816B876A90069DCCD /* MessageFlags.h */; }; … … 1998 1999 1AC1338318590C4600F3EC05 /* RemoteObjectRegistryMessageReceiver.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RemoteObjectRegistryMessageReceiver.cpp; sourceTree = "<group>"; }; 1999 2000 1AC1338418590C4600F3EC05 /* RemoteObjectRegistryMessages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemoteObjectRegistryMessages.h; sourceTree = "<group>"; }; 2001 1AC1415018AC47EE006C602C /* WKWebViewConfigurationPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKWebViewConfigurationPrivate.h; sourceTree = "<group>"; }; 2000 2002 1AC25F8912A48E0300BD2671 /* PluginProcessShim.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PluginProcessShim.h; sourceTree = "<group>"; }; 2001 2003 1AC25F8A12A48E0300BD2671 /* PluginProcessShim.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = PluginProcessShim.mm; sourceTree = "<group>"; }; … … 4389 4391 1ADF59191890528E0043C145 /* WKWebViewConfiguration.h */, 4390 4392 1ADF59181890528E0043C145 /* WKWebViewConfiguration.mm */, 4393 1AC1415018AC47EE006C602C /* WKWebViewConfigurationPrivate.h */, 4391 4394 1A66BF8E18A052ED002071B4 /* WKWebViewInternal.h */, 4392 4395 26F9A83A18A3463F00AEB88A /* WKWebViewPrivate.h */, … … 6299 6302 BC032DAB10F437D10058C15A /* Connection.h in Headers */, 6300 6303 5136183E163126DA00A99DDE /* ConnectionStack.h in Headers */, 6304 1AC1415118AC47EE006C602C /* WKWebViewConfigurationPrivate.h in Headers */, 6301 6305 CDC3830C17212282008A2FC3 /* CookieStorageShimLibrary.h in Headers */, 6302 6306 515E7730184015800007203F /* UniqueIDBDatabase.h in Headers */,
Note: See TracChangeset
for help on using the changeset viewer.