Changeset 201689 in webkit
- Timestamp:
- Jun 4, 2016 3:48:07 PM (8 years ago)
- Location:
- trunk/Source/WebKit
- Files:
-
- 4 deleted
- 15 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit/ChangeLog
r201675 r201689 1 2016-06-04 Anders Carlsson <andersca@apple.com> 2 3 Remove NPSPI that is no longer used 4 https://bugs.webkit.org/show_bug.cgi?id=158384 5 6 Reviewed by Sam Weinig. 7 8 * WebKit.xcodeproj/project.pbxproj: 9 1 10 2016-06-03 Chris Dumez <cdumez@apple.com> 2 11 -
trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj
r195698 r201689 16 16 072E5F451ABF88750003B164 /* WebMediaPlaybackTargetPicker.h in Headers */ = {isa = PBXBuildFile; fileRef = 072E5F431ABF88750003B164 /* WebMediaPlaybackTargetPicker.h */; }; 17 17 072E5F461ABF88750003B164 /* WebMediaPlaybackTargetPicker.mm in Sources */ = {isa = PBXBuildFile; fileRef = 072E5F441ABF88750003B164 /* WebMediaPlaybackTargetPicker.mm */; }; 18 0AB752370FA2E4DB00D7CBB1 /* WebNetscapeContainerCheckContextInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 0AB752350FA2E4DB00D7CBB1 /* WebNetscapeContainerCheckContextInfo.h */; };19 0AB752380FA2E4DB00D7CBB1 /* WebNetscapeContainerCheckContextInfo.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0AB752360FA2E4DB00D7CBB1 /* WebNetscapeContainerCheckContextInfo.mm */; };20 0AEBFF630F9FA8BE000D486B /* WebNetscapeContainerCheckPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 0AEBFF610F9FA8BE000D486B /* WebNetscapeContainerCheckPrivate.h */; settings = {ATTRIBUTES = (Private, ); }; };21 0AEBFF640F9FA8BE000D486B /* WebNetscapeContainerCheckPrivate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0AEBFF620F9FA8BE000D486B /* WebNetscapeContainerCheckPrivate.mm */; };22 18 1430C12C1B2C5DF700DEA01D /* WebViewGroup.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1430C12A1B2C5DF700DEA01D /* WebViewGroup.cpp */; }; 23 19 1430C12D1B2C5DF700DEA01D /* WebViewGroup.h in Headers */ = {isa = PBXBuildFile; fileRef = 1430C12B1B2C5DF700DEA01D /* WebViewGroup.h */; }; … … 475 471 072E5F431ABF88750003B164 /* WebMediaPlaybackTargetPicker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebMediaPlaybackTargetPicker.h; sourceTree = "<group>"; }; 476 472 072E5F441ABF88750003B164 /* WebMediaPlaybackTargetPicker.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebMediaPlaybackTargetPicker.mm; sourceTree = "<group>"; }; 477 0AB752350FA2E4DB00D7CBB1 /* WebNetscapeContainerCheckContextInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebNetscapeContainerCheckContextInfo.h; sourceTree = "<group>"; };478 0AB752360FA2E4DB00D7CBB1 /* WebNetscapeContainerCheckContextInfo.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebNetscapeContainerCheckContextInfo.mm; sourceTree = "<group>"; };479 0AEBFF610F9FA8BE000D486B /* WebNetscapeContainerCheckPrivate.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; path = WebNetscapeContainerCheckPrivate.h; sourceTree = "<group>"; };480 0AEBFF620F9FA8BE000D486B /* WebNetscapeContainerCheckPrivate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebNetscapeContainerCheckPrivate.mm; sourceTree = "<group>"; };481 473 1430C12A1B2C5DF700DEA01D /* WebViewGroup.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = WebViewGroup.cpp; path = WebCoreSupport/WebViewGroup.cpp; sourceTree = SOURCE_ROOT; }; 482 474 1430C12B1B2C5DF700DEA01D /* WebViewGroup.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = WebViewGroup.h; path = WebCoreSupport/WebViewGroup.h; sourceTree = SOURCE_ROOT; }; … … 1287 1279 1A4DF5E20EC8D104006BD4B4 /* WebBaseNetscapePluginView.h */, 1288 1280 1A4DF5E30EC8D104006BD4B4 /* WebBaseNetscapePluginView.mm */, 1289 0AB752350FA2E4DB00D7CBB1 /* WebNetscapeContainerCheckContextInfo.h */,1290 0AB752360FA2E4DB00D7CBB1 /* WebNetscapeContainerCheckContextInfo.mm */,1291 0AEBFF610F9FA8BE000D486B /* WebNetscapeContainerCheckPrivate.h */,1292 0AEBFF620F9FA8BE000D486B /* WebNetscapeContainerCheckPrivate.mm */,1293 1281 F5F7171E0288493C018635CA /* WebNetscapePluginPackage.h */, 1294 1282 F5F7171F0288493C018635CA /* WebNetscapePluginPackage.mm */, … … 1873 1861 A10C1D721820300E0036883A /* WebMIMETypeRegistry.h in Headers */, 1874 1862 5185F62610712B80007AA393 /* WebNavigationData.h in Headers */, 1875 0AB752370FA2E4DB00D7CBB1 /* WebNetscapeContainerCheckContextInfo.h in Headers */,1876 0AEBFF630F9FA8BE000D486B /* WebNetscapeContainerCheckPrivate.h in Headers */,1877 1863 1AEA66D40DC6B1FF003D12BF /* WebNetscapePluginEventHandler.h in Headers */, 1878 1864 1AEA66D80DC6B209003D12BF /* WebNetscapePluginEventHandlerCarbon.h in Headers */, … … 2281 2267 A10C1D731820300E0036883A /* WebMIMETypeRegistry.mm in Sources */, 2282 2268 5185F62810712B97007AA393 /* WebNavigationData.mm in Sources */, 2283 0AB752380FA2E4DB00D7CBB1 /* WebNetscapeContainerCheckContextInfo.mm in Sources */,2284 0AEBFF640F9FA8BE000D486B /* WebNetscapeContainerCheckPrivate.mm in Sources */,2285 2269 1AEA66D50DC6B1FF003D12BF /* WebNetscapePluginEventHandler.mm in Sources */, 2286 2270 1AEA66D90DC6B209003D12BF /* WebNetscapePluginEventHandlerCarbon.mm in Sources */, -
trunk/Source/WebKit/mac/ChangeLog
r201688 r201689 1 2016-06-04 Anders Carlsson <andersca@apple.com> 2 3 Remove NPSPI that is no longer used 4 https://bugs.webkit.org/show_bug.cgi?id=158384 5 6 Reviewed by Sam Weinig. 7 8 * Configurations/WebKitLegacy.xcconfig: 9 * Plugins/Hosted/NetscapePluginHostProxy.mm: 10 (WKPCCheckIfAllowedToLoadURL): Deleted. 11 (WKPCCancelCheckIfAllowedToLoadURL): Deleted. 12 (WKPCResolveURL): Deleted. 13 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 14 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 15 (WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy): Deleted. 16 (WebKit::NetscapePluginInstanceProxy::checkIfAllowedToLoadURL): Deleted. 17 (WebKit::NetscapePluginInstanceProxy::cancelCheckIfAllowedToLoadURL): Deleted. 18 (WebKit::NetscapePluginInstanceProxy::checkIfAllowedToLoadURLResult): Deleted. 19 (WebKit::NetscapePluginInstanceProxy::resolveURL): Deleted. 20 * Plugins/Hosted/WebHostedNetscapePluginView.h: 21 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 22 (-[WebHostedNetscapePluginView _webPluginContainerCancelCheckIfAllowedToLoadRequest:]): Deleted. 23 (-[WebHostedNetscapePluginView _containerCheckResult:contextInfo:]): Deleted. 24 * Plugins/Hosted/WebKitPluginClient.defs: 25 * Plugins/WebBaseNetscapePluginView.h: 26 * Plugins/WebBaseNetscapePluginView.mm: 27 (-[WebBaseNetscapePluginView resolvedURLStringForURL:target:]): Deleted. 28 * Plugins/WebNetscapeContainerCheckContextInfo.h: Removed. 29 * Plugins/WebNetscapeContainerCheckContextInfo.mm: Removed. 30 (-[WebNetscapeContainerCheckContextInfo initWithCheckRequestID:callbackFunc:context:]): Deleted. 31 (-[WebNetscapeContainerCheckContextInfo checkRequestID]): Deleted. 32 (-[WebNetscapeContainerCheckContextInfo callback]): Deleted. 33 (-[WebNetscapeContainerCheckContextInfo context]): Deleted. 34 * Plugins/WebNetscapeContainerCheckPrivate.h: Removed. 35 * Plugins/WebNetscapeContainerCheckPrivate.mm: Removed. 36 (browserContainerCheckFuncs): Deleted. 37 * Plugins/WebNetscapePluginView.h: 38 * Plugins/WebNetscapePluginView.mm: 39 (-[WebNetscapePluginView checkIfAllowedToLoadURL:frame:callbackFunc:context:]): Deleted. 40 (-[WebNetscapePluginView _containerCheckResult:contextInfo:]): Deleted. 41 (-[WebNetscapePluginView cancelCheckIfAllowedToLoadURL:]): Deleted. 42 (-[WebNetscapePluginView _webPluginContainerCancelCheckIfAllowedToLoadRequest:]): Deleted. 43 (-[WebNetscapePluginView fini]): Deleted. 44 (-[WebNetscapePluginView getVariable:value:]): Deleted. 45 (-[WebNetscapePluginView resolveURL:forTarget:]): Deleted. 46 * Plugins/npapi.mm: 47 (WKN_CheckIfAllowedToLoadURL): Deleted. 48 (WKN_CancelCheckIfAllowedToLoadURL): Deleted. 49 (WKN_ResolveURL): Deleted. 50 1 51 2016-06-04 Anders Carlsson <andersca@apple.com> 2 52 -
trunk/Source/WebKit/mac/Configurations/WebKitLegacy.xcconfig
r197187 r201689 25 25 #include "Version.xcconfig" 26 26 27 EXCLUDED_SOURCE_FILE_NAMES[sdk=iphone*] = *.defs *.nib *.pdf *.tiff CarbonUtils.m CarbonWindowAdapter.mm CarbonWindowContentView.m CarbonWindowFrame.m HIViewAdapter.m HIWebView.mm OutlookQuirksUserScript.js PopupMenuMac.mm SearchPopupMenuMac.mm WebClipView.* WebDashboardRegion.* WebDynamicScrollBarsView.* WebIconDatabase.* WebIconDatabasePrivate.* WebInspectorClient.mm WebJavaScriptTextInputPanel.* WebKeyGenerator.* WebN etscapeContainerCheckContextInfo.* WebNetscapeContainerCheckPrivate.* WebNSEventExtras.* WebNSPasteboardExtras.* WebNSWindowExtras.* WebPanelAuthenticationHandler.* WebPluginsPrivate.* WebStringTruncator.* WebTextCompletionController.*;27 EXCLUDED_SOURCE_FILE_NAMES[sdk=iphone*] = *.defs *.nib *.pdf *.tiff CarbonUtils.m CarbonWindowAdapter.mm CarbonWindowContentView.m CarbonWindowFrame.m HIViewAdapter.m HIWebView.mm OutlookQuirksUserScript.js PopupMenuMac.mm SearchPopupMenuMac.mm WebClipView.* WebDashboardRegion.* WebDynamicScrollBarsView.* WebIconDatabase.* WebIconDatabasePrivate.* WebInspectorClient.mm WebJavaScriptTextInputPanel.* WebKeyGenerator.* WebNSEventExtras.* WebNSPasteboardExtras.* WebNSWindowExtras.* WebPanelAuthenticationHandler.* WebPluginsPrivate.* WebStringTruncator.* WebTextCompletionController.*; 28 28 EXCLUDED_SOURCE_FILE_NAMES[sdk=macosx*] = *IOS.mm MemoryMeasure.h WebCaretChangeListener.h WebFixedPositionContent.h WebFrameIOS.h WebFrameIPhone.h WebGeolocationCoreLocationProvider.h WebGeolocationPrivate.h WebGeolocationProviderIOS.h WebMIMETypeRegistry.h WebNSStringExtrasIOS.h WebNSStringExtrasIPhone.h WebPDFViewIOS.h WebPDFViewIPhone.h WebPDFViewPlaceholder.h WebSelectionRect.h WebUIKitDelegate.h WebUIKitSupport.h WebVisiblePosition.h; 29 29 -
trunk/Source/WebKit/mac/Plugins/Hosted/NetscapePluginHostProxy.mm
r197791 r201689 1104 1104 } 1105 1105 1106 kern_return_t WKPCCheckIfAllowedToLoadURL(mach_port_t clientPort, uint32_t pluginID, data_t urlData, mach_msg_type_number_t urlLength,1107 data_t targetData, mach_msg_type_number_t targetLength, uint32_t *checkID)1108 {1109 DataDeallocator urlDeallocator(urlData, urlLength);1110 DataDeallocator targetDeallocator(targetData, targetLength);1111 1112 NetscapePluginHostProxy* hostProxy = pluginProxyMap().get(clientPort);1113 if (!hostProxy)1114 return KERN_FAILURE;1115 1116 NetscapePluginInstanceProxy* instanceProxy = hostProxy->pluginInstance(pluginID);1117 if (!instanceProxy)1118 return KERN_FAILURE;1119 1120 *checkID = instanceProxy->checkIfAllowedToLoadURL(urlData, targetData);1121 return KERN_SUCCESS;1122 }1123 1124 kern_return_t WKPCCancelCheckIfAllowedToLoadURL(mach_port_t clientPort, uint32_t pluginID, uint32_t checkID)1125 {1126 NetscapePluginHostProxy* hostProxy = pluginProxyMap().get(clientPort);1127 if (!hostProxy)1128 return KERN_FAILURE;1129 1130 NetscapePluginInstanceProxy* instanceProxy = hostProxy->pluginInstance(pluginID);1131 if (!instanceProxy)1132 return KERN_FAILURE;1133 1134 instanceProxy->cancelCheckIfAllowedToLoadURL(checkID);1135 return KERN_SUCCESS;1136 }1137 1138 kern_return_t WKPCResolveURL(mach_port_t clientPort, uint32_t pluginID, data_t urlData, mach_msg_type_number_t urlLength,1139 data_t targetData, mach_msg_type_number_t targetLength,1140 data_t *resolvedURLData, mach_msg_type_number_t *resolvedURLLength)1141 {1142 DataDeallocator urlDeallocator(urlData, urlLength);1143 DataDeallocator targetDeallocator(targetData, targetLength);1144 1145 *resolvedURLData = 0;1146 *resolvedURLLength = 0;1147 1148 NetscapePluginHostProxy* hostProxy = pluginProxyMap().get(clientPort);1149 if (!hostProxy)1150 return KERN_FAILURE;1151 1152 NetscapePluginInstanceProxy* instanceProxy = hostProxy->pluginInstance(pluginID);1153 if (!instanceProxy)1154 return KERN_FAILURE;1155 1156 instanceProxy->resolveURL(urlData, targetData, *resolvedURLData, *resolvedURLLength);1157 return KERN_SUCCESS;1158 }1159 1106 1160 1107 kern_return_t WKPCSetException(mach_port_t clientPort, data_t message, mach_msg_type_number_t messageCnt) -
trunk/Source/WebKit/mac/Plugins/Hosted/NetscapePluginInstanceProxy.h
r194496 r201689 163 163 164 164 uint32_t nextRequestID(); 165 166 uint32_t checkIfAllowedToLoadURL(const char* url, const char* target); 167 void cancelCheckIfAllowedToLoadURL(uint32_t checkID); 168 void checkIfAllowedToLoadURLResult(uint32_t checkID, bool allowed); 169 170 void resolveURL(const char* url, const char* target, data_t& resolvedURLData, mach_msg_type_number_t& resolvedURLLength); 171 165 172 166 void didDraw(); 173 167 void privateBrowsingModeDidChange(bool isPrivateBrowsingEnabled); … … 344 338 ProxyInstanceSet m_instances; 345 339 346 uint32_t m_urlCheckCounter;347 typedef HashMap<uint32_t, RetainPtr<id>> URLCheckMap;348 URLCheckMap m_urlChecks;349 350 340 unsigned m_pluginFunctionCallDepth; 351 341 bool m_shouldStopSoon; -
trunk/Source/WebKit/mac/Plugins/Hosted/NetscapePluginInstanceProxy.mm
r201688 r201689 224 224 , m_rendererType(UseSoftwareRenderer) 225 225 , m_waitingForReply(false) 226 , m_urlCheckCounter(0)227 226 , m_pluginFunctionCallDepth(0) 228 227 , m_shouldStopSoon(false) … … 1608 1607 } 1609 1608 1610 uint32_t NetscapePluginInstanceProxy::checkIfAllowedToLoadURL(const char* url, const char* target)1611 {1612 uint32_t checkID;1613 1614 // Assign a check ID1615 do {1616 checkID = ++m_urlCheckCounter;1617 } while (m_urlChecks.contains(checkID) || !m_urlCheckCounter);1618 1619 NSString *frameName = target ? [NSString stringWithCString:target encoding:NSISOLatin1StringEncoding] : nil;1620 1621 NSNumber *contextInfo = [[NSNumber alloc] initWithUnsignedInt:checkID];1622 WebPluginContainerCheck *check = [WebPluginContainerCheck checkWithRequest:[m_pluginView requestWithURLCString:url]1623 target:frameName1624 resultObject:m_pluginView1625 selector:@selector(_containerCheckResult:contextInfo:)1626 controller:m_pluginView1627 contextInfo:contextInfo];1628 1629 [contextInfo release];1630 m_urlChecks.set(checkID, check);1631 [check start];1632 1633 return checkID;1634 }1635 1636 void NetscapePluginInstanceProxy::cancelCheckIfAllowedToLoadURL(uint32_t checkID)1637 {1638 URLCheckMap::iterator it = m_urlChecks.find(checkID);1639 if (it == m_urlChecks.end())1640 return;1641 1642 WebPluginContainerCheck *check = it->value.get();1643 [check cancel];1644 m_urlChecks.remove(it);1645 }1646 1647 void NetscapePluginInstanceProxy::checkIfAllowedToLoadURLResult(uint32_t checkID, bool allowed)1648 {1649 }1650 1651 void NetscapePluginInstanceProxy::resolveURL(const char* url, const char* target, data_t& resolvedURLData, mach_msg_type_number_t& resolvedURLLength)1652 {1653 ASSERT(m_pluginView);1654 1655 WTF::CString resolvedURL = [m_pluginView resolvedURLStringForURL:url target:target];1656 1657 resolvedURLLength = resolvedURL.length();1658 mig_allocate(reinterpret_cast<vm_address_t*>(&resolvedURLData), resolvedURLLength);1659 memcpy(resolvedURLData, resolvedURL.data(), resolvedURLLength);1660 }1661 1662 1609 void NetscapePluginInstanceProxy::privateBrowsingModeDidChange(bool isPrivateBrowsingEnabled) 1663 1610 { -
trunk/Source/WebKit/mac/Plugins/Hosted/WebHostedNetscapePluginView.h
r154078 r201689 36 36 } 37 37 38 @interface WebHostedNetscapePluginView : WebBaseNetscapePluginView<WebPluginManualLoader , WebPluginContainerCheckController>38 @interface WebHostedNetscapePluginView : WebBaseNetscapePluginView<WebPluginManualLoader> 39 39 { 40 40 RetainPtr<NSArray> _attributeKeys; -
trunk/Source/WebKit/mac/Plugins/Hosted/WebHostedNetscapePluginView.mm
r197791 r201689 516 516 } 517 517 518 - (void)_webPluginContainerCancelCheckIfAllowedToLoadRequest:(id)webPluginContainerCheck519 {520 ASSERT([webPluginContainerCheck isKindOfClass:[WebPluginContainerCheck class]]);521 522 id contextInfo = [webPluginContainerCheck contextInfo];523 ASSERT([contextInfo isKindOfClass:[NSNumber class]]);524 525 if (!_proxy)526 return;527 528 uint32_t checkID = [(NSNumber *)contextInfo unsignedIntValue];529 _proxy->cancelCheckIfAllowedToLoadURL(checkID);530 }531 532 - (void)_containerCheckResult:(PolicyAction)policy contextInfo:(id)contextInfo533 {534 ASSERT([contextInfo isKindOfClass:[NSNumber class]]);535 if (!_proxy)536 return;537 538 uint32_t checkID = [(NSNumber *)contextInfo unsignedIntValue];539 _proxy->checkIfAllowedToLoadURLResult(checkID, (policy == PolicyUse));540 }541 542 518 - (void)webFrame:(WebFrame *)webFrame didFinishLoadWithReason:(NPReason)reason 543 519 { -
trunk/Source/WebKit/mac/Plugins/Hosted/WebKitPluginClient.defs
r168047 r201689 192 192 modal :boolean_t); 193 193 194 routine PCCheckIfAllowedToLoadURL(clientPort :mach_port_t;195 pluginID :uint32_t;196 url :data_t;197 target :data_t;198 out checkID :uint32_t);199 200 simpleroutine PCCancelCheckIfAllowedToLoadURL(clientPort :mach_port_t;201 pluginID :uint32_t;202 checkID :uint32_t);203 204 routine PCResolveURL(clientPort :mach_port_t;205 pluginID :uint32_t;206 url :data_t;207 target :data_t;208 out resolvedURL :data_t, dealloc);209 210 194 // Replies 211 195 simpleroutine PCInstantiatePluginReply(clientPort :mach_port_t; -
trunk/Source/WebKit/mac/Plugins/WebBaseNetscapePluginView.h
r183172 r201689 31 31 32 32 #import "WebNetscapePluginPackage.h" 33 #import "WebPluginContainerCheck.h"34 33 #import <wtf/Forward.h> 35 34 #import <wtf/PassRefPtr.h> … … 123 122 - (BOOL)convertFromX:(double)sourceX andY:(double)sourceY space:(NPCoordinateSpace)sourceSpace 124 123 toX:(double *)destX andY:(double *)destY space:(NPCoordinateSpace)destSpace; 125 - (WTF::CString)resolvedURLStringForURL:(const char*)url target:(const char*)target;126 124 127 125 - (void)invalidatePluginContentRect:(NSRect)rect; -
trunk/Source/WebKit/mac/Plugins/WebBaseNetscapePluginView.mm
r201588 r201689 35 35 #import "WebKitNSStringExtras.h" 36 36 #import "WebKitSystemInterface.h" 37 #import "WebPluginContainerCheck.h"38 #import "WebNetscapeContainerCheckContextInfo.h"39 37 #import "WebNSURLExtras.h" 40 38 #import "WebNSURLRequestExtras.h" … … 830 828 831 829 832 - (CString)resolvedURLStringForURL:(const char*)url target:(const char*)target833 {834 String relativeURLString = String::fromUTF8(url);835 if (relativeURLString.isNull())836 return CString();837 838 Frame* frame = core([self webFrame]);839 if (!frame)840 return CString();841 842 Frame* targetFrame = frame->tree().find(String::fromUTF8(target));843 if (!targetFrame)844 return CString();845 846 if (!frame->document()->securityOrigin()->canAccess(targetFrame->document()->securityOrigin()))847 return CString();848 849 URL absoluteURL = targetFrame->document()->completeURL(relativeURLString);850 return absoluteURL.string().utf8();851 }852 853 830 - (void)invalidatePluginContentRect:(NSRect)rect 854 831 { -
trunk/Source/WebKit/mac/Plugins/WebNetscapePluginView.h
r183172 r201689 30 30 31 31 #import "WebBaseNetscapePluginView.h" 32 #import "WebNetscapeContainerCheckPrivate.h"33 32 #import <WebKitLegacy/npfunctions.h> 34 33 #import <WebKitLegacy/npapi.h> … … 54 53 #define WebNetscapePluginView WebNetscapePluginDocumentView 55 54 56 @interface WebNetscapePluginView : WebBaseNetscapePluginView<WebPluginManualLoader , WebPluginContainerCheckController>55 @interface WebNetscapePluginView : WebBaseNetscapePluginView<WebPluginManualLoader> 57 56 { 58 57 @package … … 97 96 BOOL _isFlash; 98 97 BOOL _isSilverlight; 99 100 NSMutableDictionary *_containerChecksInProgress;101 uint32_t _currentContainerCheckRequestID;102 98 } 103 99 … … 144 140 - (void)handleMouseExited:(NSEvent *)event; 145 141 146 - (uint32_t)checkIfAllowedToLoadURL:(const char*)urlCString frame:(const char*)frameNameCString callbackFunc:(void (*)(NPP npp, uint32_t checkID, NPBool allowed, void* context))callbackFunc context:(void*)context;147 - (void)cancelCheckIfAllowedToLoadURL:(uint32_t)checkID;148 149 142 @end 150 143 … … 176 169 username:(char**)username usernameLength:(uint32_t*)usernameLength 177 170 password:(char**)password passwordLength:(uint32_t*)passwordLength; 178 - (char*)resolveURL:(const char*)url forTarget:(const char*)target;179 171 @end 180 181 WKNBrowserContainerCheckFuncs *browserContainerCheckFuncs();182 172 183 173 #endif -
trunk/Source/WebKit/mac/Plugins/WebNetscapePluginView.mm
r194496 r201689 46 46 #import "WebNSURLRequestExtras.h" 47 47 #import "WebNSViewExtras.h" 48 #import "WebNetscapeContainerCheckContextInfo.h"49 #import "WebNetscapeContainerCheckPrivate.h"50 48 #import "WebNetscapePluginEventHandler.h" 51 49 #import "WebNetscapePluginPackage.h" 52 50 #import "WebNetscapePluginStream.h" 53 #import "WebPluginContainerCheck.h"54 51 #import "WebPluginRequest.h" 55 52 #import "WebPreferences.h" … … 1248 1245 } 1249 1246 1250 - (uint32_t)checkIfAllowedToLoadURL:(const char*)urlCString frame:(const char*)frameNameCString1251 callbackFunc:(void (*)(NPP npp, uint32_t checkID, NPBool allowed, void* context))callbackFunc1252 context:(void*)context1253 {1254 if (!_containerChecksInProgress)1255 _containerChecksInProgress = [[NSMutableDictionary alloc] init];1256 1257 NSString *frameName = frameNameCString ? [NSString stringWithCString:frameNameCString encoding:NSISOLatin1StringEncoding] : nil;1258 1259 ++_currentContainerCheckRequestID;1260 WebNetscapeContainerCheckContextInfo *contextInfo = [[WebNetscapeContainerCheckContextInfo alloc] initWithCheckRequestID:_currentContainerCheckRequestID1261 callbackFunc:callbackFunc1262 context:context];1263 1264 WebPluginContainerCheck *check = [WebPluginContainerCheck checkWithRequest:[self requestWithURLCString:urlCString]1265 target:frameName1266 resultObject:self1267 selector:@selector(_containerCheckResult:contextInfo:)1268 controller:self1269 contextInfo:contextInfo];1270 1271 [contextInfo release];1272 [_containerChecksInProgress setObject:check forKey:[NSNumber numberWithInt:_currentContainerCheckRequestID]];1273 [check start];1274 1275 return _currentContainerCheckRequestID;1276 }1277 1278 - (void)_containerCheckResult:(PolicyAction)policy contextInfo:(id)contextInfo1279 {1280 ASSERT([contextInfo isKindOfClass:[WebNetscapeContainerCheckContextInfo class]]);1281 void (*pluginCallback)(NPP npp, uint32_t, NPBool, void*) = [contextInfo callback];1282 1283 if (!pluginCallback) {1284 ASSERT_NOT_REACHED();1285 return;1286 }1287 1288 pluginCallback([self plugin], [contextInfo checkRequestID], (policy == PolicyUse), [contextInfo context]);1289 }1290 1291 - (void)cancelCheckIfAllowedToLoadURL:(uint32_t)checkID1292 {1293 WebPluginContainerCheck *check = (WebPluginContainerCheck *)[_containerChecksInProgress objectForKey:[NSNumber numberWithInt:checkID]];1294 1295 if (!check)1296 return;1297 1298 [check cancel];1299 [_containerChecksInProgress removeObjectForKey:[NSNumber numberWithInt:checkID]];1300 }1301 1302 // WebPluginContainerCheck automatically calls this method after invoking our _containerCheckResult: selector.1303 // It works this way because calling -[WebPluginContainerCheck cancel] allows it to do it's teardown process.1304 - (void)_webPluginContainerCancelCheckIfAllowedToLoadRequest:(id)webPluginContainerCheck1305 {1306 ASSERT([webPluginContainerCheck isKindOfClass:[WebPluginContainerCheck class]]);1307 WebPluginContainerCheck *check = (WebPluginContainerCheck *)webPluginContainerCheck;1308 ASSERT([[check contextInfo] isKindOfClass:[WebNetscapeContainerCheckContextInfo class]]);1309 1310 [self cancelCheckIfAllowedToLoadURL:[[check contextInfo] checkRequestID]];1311 }1312 1313 1314 1247 // MARK: NSVIEW 1315 1248 … … 1360 1293 1361 1294 ASSERT(!_eventHandler); 1362 1363 [_containerChecksInProgress release];1364 1295 } 1365 1296 … … 2056 1987 { 2057 1988 *(NPBool *)value = _isPrivateBrowsingEnabled; 2058 return NPERR_NO_ERROR;2059 }2060 2061 case WKNVBrowserContainerCheckFuncs:2062 {2063 *(WKNBrowserContainerCheckFuncs **)value = browserContainerCheckFuncs();2064 1989 return NPERR_NO_ERROR; 2065 1990 } … … 2278 2203 } 2279 2204 2280 - (char*)resolveURL:(const char*)url forTarget:(const char*)target2281 {2282 CString location = [self resolvedURLStringForURL:url target:target];2283 2284 if (location.isNull())2285 return 0;2286 2287 // We use strdup here because the caller needs to free it with NPN_MemFree (which calls free).2288 return strdup(location.data());2289 }2290 2291 2205 @end 2292 2206 -
trunk/Source/WebKit/mac/Plugins/npapi.mm
r177986 r201689 226 226 } 227 227 228 uint32_t WKN_CheckIfAllowedToLoadURL(NPP instance, const char* url, const char* frame, void (*callbackFunc)(NPP npp, uint32_t, NPBool, void*), void* context)229 {230 return [pluginViewForInstance(instance) checkIfAllowedToLoadURL:url frame:frame callbackFunc:callbackFunc context:context];231 }232 233 void WKN_CancelCheckIfAllowedToLoadURL(NPP instance, uint32_t checkID)234 {235 [pluginViewForInstance(instance) cancelCheckIfAllowedToLoadURL:checkID];236 }237 238 char* WKN_ResolveURL(NPP instance, const char* url, const char* target)239 {240 return [pluginViewForInstance(instance) resolveURL:url forTarget:target];241 }242 243 228 #endif
Note: See TracChangeset
for help on using the changeset viewer.