Changeset 278265 in webkit
- Timestamp:
- May 30, 2021, 7:57:04 PM (5 years ago)
- Location:
- trunk/Source/WebKitLegacy
- Files:
-
- 3 deleted
- 9 edited
-
ChangeLog (modified) (1 diff)
-
PlatformFTW.cmake (modified) (4 diffs)
-
PlatformWin.cmake (modified) (4 diffs)
-
win/ChangeLog (modified) (1 diff)
-
win/Plugins (deleted)
-
win/WebCoreSupport/EmbeddedWidget.cpp (deleted)
-
win/WebCoreSupport/EmbeddedWidget.h (deleted)
-
win/WebCoreSupport/WebFrameLoaderClient.cpp (modified) (7 diffs)
-
win/WebCoreSupport/WebFrameLoaderClient.h (modified) (3 diffs)
-
win/WebCoreSupport/WebPluginInfoProvider.cpp (modified) (2 diffs)
-
win/WebFrame.cpp (modified) (1 diff)
-
win/WebView.cpp (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKitLegacy/ChangeLog
r278185 r278265 1 2021-05-30 Darin Adler <darin@apple.com> 2 3 Remove some of the unneeded WebKitLegacy Windows-specific plug-in code 4 https://bugs.webkit.org/show_bug.cgi?id=226410 5 6 Reviewed by Chris Dumez. 7 8 * PlatformFTW.cmake: Removed all the code in the win/Plugins directory, 9 and EmbeddedWidget.h/cpp. 10 * PlatformWin.cmake: Ditto. 11 1 12 2021-05-27 Darin Adler <darin@apple.com> 2 13 -
trunk/Source/WebKitLegacy/PlatformFTW.cmake
r270690 r278265 28 28 "${CMAKE_BINARY_DIR}/../include/private/WebCore" 29 29 "${WEBKITLEGACY_DIR}/win" 30 "${WEBKITLEGACY_DIR}/win/plugins"31 30 "${WEBKITLEGACY_DIR}/win/WebCoreSupport" 32 31 "${WebKitLegacy_DERIVED_SOURCES_DIR}/include" … … 172 171 win/WebWorkersPrivate.cpp 173 172 174 win/plugins/PluginDatabase.cpp175 win/plugins/PluginDatabaseWin.cpp176 win/plugins/PluginDebug.cpp177 win/plugins/PluginMainThreadScheduler.cpp178 win/plugins/PluginMessageThrottlerWin.cpp179 win/plugins/PluginPackage.cpp180 win/plugins/PluginPackageWin.cpp181 win/plugins/PluginStream.cpp182 win/plugins/PluginView.cpp183 win/plugins/PluginViewWin.cpp184 win/plugins/npapi.cpp185 186 173 win/storage/WebDatabaseProvider.cpp 187 174 ) … … 189 176 list(APPEND WebKitLegacy_SOURCES_WebCoreSupport 190 177 win/WebCoreSupport/AcceleratedCompositingContext.cpp 191 win/WebCoreSupport/EmbeddedWidget.cpp192 win/WebCoreSupport/EmbeddedWidget.h193 178 win/WebCoreSupport/WebChromeClient.cpp 194 179 win/WebCoreSupport/WebChromeClient.h … … 227 212 ${COREFOUNDATION_LIBRARY} 228 213 ) 229 endif ()230 231 if (CMAKE_SIZEOF_VOID_P EQUAL 8)232 enable_language(ASM_MASM)233 if (MSVC)234 set(MASM_EXECUTABLE ml64)235 set(MASM_FLAGS /c /Fo)236 add_custom_command(237 OUTPUT ${WebKitLegacy_DERIVED_SOURCES_DIR}/PaintHooks.obj238 MAIN_DEPENDENCY win/plugins/PaintHooks.asm239 COMMAND ${MASM_EXECUTABLE} ${MASM_FLAGS}240 ${WebKitLegacy_DERIVED_SOURCES_DIR}/PaintHooks.obj241 ${CMAKE_CURRENT_SOURCE_DIR}/win/plugins/PaintHooks.asm242 VERBATIM)243 list(APPEND WebKitLegacy_SOURCES244 ${WebKitLegacy_DERIVED_SOURCES_DIR}/PaintHooks.obj245 )246 else ()247 list(APPEND WebKitLegacy_SOURCES248 win/plugins/PaintHooks.asm249 )250 endif ()251 214 endif () 252 215 -
trunk/Source/WebKitLegacy/PlatformWin.cmake
r274714 r278265 46 46 "${CMAKE_BINARY_DIR}/../include/private/WebCore" 47 47 "${WEBKITLEGACY_DIR}/win" 48 "${WEBKITLEGACY_DIR}/win/plugins"49 48 "${WEBKITLEGACY_DIR}/win/WebCoreSupport" 50 49 "${WebKitLegacy_DERIVED_SOURCES_DIR}/include" … … 190 189 win/WebWorkersPrivate.cpp 191 190 192 win/plugins/PluginDatabase.cpp193 win/plugins/PluginDatabaseWin.cpp194 win/plugins/PluginDebug.cpp195 win/plugins/PluginMainThreadScheduler.cpp196 win/plugins/PluginMessageThrottlerWin.cpp197 win/plugins/PluginPackage.cpp198 win/plugins/PluginPackageWin.cpp199 win/plugins/PluginStream.cpp200 win/plugins/PluginView.cpp201 win/plugins/PluginViewWin.cpp202 win/plugins/npapi.cpp203 204 191 win/storage/WebDatabaseProvider.cpp 205 192 ) … … 207 194 list(APPEND WebKitLegacy_SOURCES_WebCoreSupport 208 195 win/WebCoreSupport/AcceleratedCompositingContext.cpp 209 win/WebCoreSupport/EmbeddedWidget.cpp210 win/WebCoreSupport/EmbeddedWidget.h211 196 win/WebCoreSupport/WebChromeClient.cpp 212 197 win/WebCoreSupport/WebChromeClient.h … … 274 259 ${WebKitLegacy_DERIVED_SOURCES_DIR}/WebViewPreferencesChangedGenerated.cpp 275 260 ) 276 277 278 if (CMAKE_SIZEOF_VOID_P EQUAL 8)279 enable_language(ASM_MASM)280 if (MSVC)281 set(MASM_EXECUTABLE ml64)282 set(MASM_FLAGS /c /Fo)283 add_custom_command(284 OUTPUT ${WebKitLegacy_DERIVED_SOURCES_DIR}/PaintHooks.obj285 MAIN_DEPENDENCY win/plugins/PaintHooks.asm286 COMMAND ${MASM_EXECUTABLE} ${MASM_FLAGS}287 ${WebKitLegacy_DERIVED_SOURCES_DIR}/PaintHooks.obj288 ${CMAKE_CURRENT_SOURCE_DIR}/win/plugins/PaintHooks.asm289 VERBATIM)290 list(APPEND WebKitLegacy_SOURCES291 ${WebKitLegacy_DERIVED_SOURCES_DIR}/PaintHooks.obj292 )293 else ()294 list(APPEND WebKitLegacy_SOURCES295 win/plugins/PaintHooks.asm296 )297 endif ()298 endif ()299 261 300 262 list(APPEND WebKitLegacy_SOURCES ${WebKitLegacy_INCLUDES} ${WebKitLegacy_SOURCES_Classes} ${WebKitLegacy_SOURCES_WebCoreSupport}) -
trunk/Source/WebKitLegacy/win/ChangeLog
r278253 r278265 1 2021-05-30 Darin Adler <darin@apple.com> 2 3 Remove some of the unneeded WebKitLegacy Windows-specific plug-in code 4 https://bugs.webkit.org/show_bug.cgi?id=226410 5 6 Reviewed by Chris Dumez. 7 8 * Plugins/PaintHooks.asm: Removed. 9 * Plugins/PlatformModule.h: Removed. 10 * Plugins/PluginDatabase.cpp: Removed. 11 * Plugins/PluginDatabase.h: Removed. 12 * Plugins/PluginDatabaseWin.cpp: Removed. 13 * Plugins/PluginDebug.cpp: Removed. 14 * Plugins/PluginDebug.h: Removed. 15 * Plugins/PluginMainThreadScheduler.cpp: Removed. 16 * Plugins/PluginMainThreadScheduler.h: Removed. 17 * Plugins/PluginMessageThrottlerWin.cpp: Removed. 18 * Plugins/PluginMessageThrottlerWin.h: Removed. 19 * Plugins/PluginPackage.cpp: Removed. 20 * Plugins/PluginPackage.h: Removed. 21 * Plugins/PluginPackageWin.cpp: Removed. 22 * Plugins/PluginQuirkSet.h: Removed. 23 * Plugins/PluginStream.cpp: Removed. 24 * Plugins/PluginStream.h: Removed. 25 * Plugins/PluginView.cpp: Removed. 26 * Plugins/PluginView.h: Removed. 27 * Plugins/PluginViewWin.cpp: Removed. 28 * Plugins/npapi.cpp: Removed. 29 * WebCoreSupport/EmbeddedWidget.cpp: Removed. 30 * WebCoreSupport/EmbeddedWidget.h: Removed. 31 32 * WebCoreSupport/WebFrameLoaderClient.cpp: Removed includes of 33 PluginDatabase.h, PluginPackage.h, PluginView.h. 34 (WebFrameLoaderClient::WebFrameLoaderClient): Removed m_manualLoader and 35 m_hasSetnResponseToPlugin. 36 (WebFrameLoaderClient::setMainDocumentError): Removed all the code here, 37 which was only used for m_manualLoader. 38 (WebFrameLoaderClient::committedLoad): Removed code that runs only if 39 m_manualLoader is non-null. 40 (WebFrameLoaderClient::finishedLoading): Removed all the code here, which 41 was only used for m_manualLoader. 42 (WebFrameLoaderClient::objectContentType): Removed call to plug-in database 43 to figure out MIME type and select a plug-in to load. 44 (WebFrameLoaderClient::dispatchDidFailToStartPlugin const): Deleted. 45 (WebFrameLoaderClient::createPlugin): Return nullptr. No longer support 46 Netscape-style plug-ins, nor call the embeddedViewWithArguments function. 47 (WebFrameLoaderClient::redirectDataToPlugin): Removed all the code here. 48 * WebCoreSupport/WebFrameLoaderClient.h: Removed dispatchDidFailToStartPlugin, 49 m_manualLoader, and m_hasSentResponseToPlugin. 50 * WebCoreSupport/WebPluginInfoProvider.cpp: Removed include of PluginDatabase.h. 51 (WebPluginInfoProvider::refreshPlugins): Removed all the code here. 52 (WebPluginInfoProvider::pluginInfo): Ditto. 53 (WebPluginInfoProvider::webVisiblePluginInfo): Ditto. 54 * WebFrame.cpp: Removed includes of PluginDatabase.h and PluginView.h. 55 * WebView.cpp: Ditto. 56 (WebView::WebViewWndProc): Removed workaround specifically for the 57 Windows Media Player plug-in. 58 (WebView::addAdditionalPluginDirectory): Removed all the code here. 59 1 60 2021-05-30 Darin Adler <darin@apple.com> 2 61 -
trunk/Source/WebKitLegacy/win/WebCoreSupport/WebFrameLoaderClient.cpp
r278253 r278265 33 33 #include "DOMHTMLClasses.h" 34 34 #include "DefaultPolicyDelegate.h" 35 #include "EmbeddedWidget.h"36 35 #include "MarshallingHelpers.h" 37 #include "PluginDatabase.h"38 #include "PluginPackage.h"39 #include "PluginView.h"40 36 #include "WebActionPropertyBag.h" 41 37 #include "WebCachedFramePlatformData.h" … … 110 106 : m_policyListenerPrivate(makeUnique<WebFramePolicyListenerPrivate>()) 111 107 , m_webFrame(webFrame) 112 , m_manualLoader(0)113 , m_hasSentResponseToPlugin(false)114 108 { 115 109 } … … 629 623 } 630 624 631 void WebFrameLoaderClient::setMainDocumentError(DocumentLoader*, const ResourceError& error) 632 { 633 if (!m_manualLoader) 634 return; 635 636 m_manualLoader->didFail(error); 637 m_manualLoader = 0; 638 m_hasSentResponseToPlugin = false; 625 void WebFrameLoaderClient::setMainDocumentError(DocumentLoader*, const ResourceError&) 626 { 639 627 } 640 628 … … 656 644 void WebFrameLoaderClient::committedLoad(DocumentLoader* loader, const char* data, int length) 657 645 { 658 if (!m_manualLoader) 659 loader->commitData(data, length); 646 loader->commitData(data, length); 660 647 661 648 // If the document is a stand-alone media document, now is the right time to cancel the WebKit load. … … 664 651 if (coreFrame->document()->isMediaDocument()) 665 652 loader->cancelMainResourceLoad(pluginWillHandleLoadError(loader->response())); 666 667 if (!m_manualLoader)668 return;669 670 if (!m_hasSentResponseToPlugin) {671 m_manualLoader->didReceiveResponse(loader->response());672 // didReceiveResponse sets up a new stream to the plug-in. on a full-page plug-in, a failure in673 // setting up this stream can cause the main document load to be cancelled, setting m_manualLoader674 // to null675 if (!m_manualLoader)676 return;677 m_hasSentResponseToPlugin = true;678 }679 m_manualLoader->didReceiveData(data, length);680 653 } 681 654 682 655 void WebFrameLoaderClient::finishedLoading(DocumentLoader*) 683 656 { 684 if (!m_manualLoader)685 return;686 687 m_manualLoader->didFinishLoading();688 m_manualLoader = 0;689 m_hasSentResponseToPlugin = false;690 657 } 691 658 … … 1000 967 String mimeType = mimeTypeIn; 1001 968 1002 if (mimeType.isEmpty()) {1003 String decodedPath = decodeURLEscapeSequences(url.path());1004 mimeType = PluginDatabase::installedPlugins()->MIMETypeForExtension(StringView { decodedPath }.substring(decodedPath.reverseFind('.') + 1));1005 }1006 1007 969 if (mimeType.isEmpty()) 1008 970 return ObjectContentType::Frame; // Go ahead and hope that we can display the content. 1009 971 1010 bool plugInSupportsMIMEType = PluginDatabase::installedPlugins()->isMIMETypeRegistered(mimeType);1011 1012 972 if (MIMETypeRegistry::isSupportedImageMIMEType(mimeType)) 1013 973 return WebCore::ObjectContentType::Image; 1014 974 1015 if (plugInSupportsMIMEType)1016 return WebCore::ObjectContentType::PlugIn;1017 1018 975 if (MIMETypeRegistry::isSupportedNonImageMIMEType(mimeType)) 1019 976 return WebCore::ObjectContentType::Frame; … … 1022 979 } 1023 980 1024 void WebFrameLoaderClient::dispatchDidFailToStartPlugin(const PluginView& pluginView) const 1025 { 1026 #if USE(CF) 1027 WebView* webView = m_webFrame->webView(); 1028 1029 COMPtr<IWebResourceLoadDelegate> resourceLoadDelegate; 1030 if (FAILED(webView->resourceLoadDelegate(&resourceLoadDelegate))) 1031 return; 1032 1033 RetainPtr<CFMutableDictionaryRef> userInfo = adoptCF(CFDictionaryCreateMutable(0, 0, &kCFTypeDictionaryKeyCallBacks, &kCFTypeDictionaryValueCallBacks)); 1034 1035 Frame* frame = core(m_webFrame); 1036 ASSERT(frame == pluginView.parentFrame()); 1037 1038 if (!pluginView.pluginsPage().isNull()) { 1039 URL pluginPageURL = frame->document()->completeURL(stripLeadingAndTrailingHTMLSpaces(pluginView.pluginsPage())); 1040 if (pluginPageURL.protocolIsInHTTPFamily()) { 1041 static NeverDestroyed<RetainPtr<CFStringRef>> key = MarshallingHelpers::LPCOLESTRToCFStringRef(WebKitErrorPlugInPageURLStringKey); 1042 CFDictionarySetValue(userInfo.get(), key.get().get(), pluginPageURL.string().createCFString().get()); 1043 } 1044 } 1045 1046 if (!pluginView.mimeType().isNull()) { 1047 static NeverDestroyed<RetainPtr<CFStringRef>> key = MarshallingHelpers::LPCOLESTRToCFStringRef(WebKitErrorMIMETypeKey); 1048 CFDictionarySetValue(userInfo.get(), key.get().get(), pluginView.mimeType().createCFString().get()); 1049 } 1050 1051 if (pluginView.plugin()) { 1052 String pluginName = pluginView.plugin()->name(); 1053 if (!pluginName.isNull()) { 1054 static NeverDestroyed<RetainPtr<CFStringRef>> key = MarshallingHelpers::LPCOLESTRToCFStringRef(WebKitErrorPlugInNameKey); 1055 CFDictionarySetValue(userInfo.get(), key.get().get(), pluginName.createCFString().get()); 1056 } 1057 } 1058 1059 COMPtr<CFDictionaryPropertyBag> userInfoBag = CFDictionaryPropertyBag::createInstance(); 1060 userInfoBag->setDictionary(userInfo.get()); 1061 1062 int errorCode = 0; 1063 String description; 1064 switch (pluginView.status()) { 1065 case PluginStatusCanNotFindPlugin: 1066 errorCode = WebKitErrorCannotFindPlugIn; 1067 description = WEB_UI_STRING("The plug-in can\xE2\x80\x99t be found", "WebKitErrorCannotFindPlugin description"); 1068 break; 1069 case PluginStatusCanNotLoadPlugin: 1070 errorCode = WebKitErrorCannotLoadPlugIn; 1071 description = WEB_UI_STRING("The plug-in can\xE2\x80\x99t be loaded", "WebKitErrorCannotLoadPlugin description"); 1072 break; 1073 default: 1074 ASSERT_NOT_REACHED(); 1075 } 1076 1077 ResourceError resourceError(String(WebKitErrorDomain), errorCode, pluginView.url(), String()); 1078 COMPtr<IWebError> error(AdoptCOM, WebError::createInstance(resourceError, userInfoBag.get())); 1079 1080 resourceLoadDelegate->plugInFailedWithError(webView, error.get(), getWebDataSource(frame->loader().documentLoader())); 1081 #else 1082 ASSERT(0); 1083 #endif 1084 } 1085 1086 RefPtr<Widget> WebFrameLoaderClient::createPlugin(const IntSize& pluginSize, HTMLPlugInElement& element, const URL& url, const Vector<String>& paramNames, const Vector<String>& paramValues, const String& mimeType, bool loadManually) 1087 { 1088 WebView* webView = m_webFrame->webView(); 1089 1090 COMPtr<IWebUIDelegate> ui; 1091 if (SUCCEEDED(webView->uiDelegate(&ui)) && ui) { 1092 COMPtr<IWebUIDelegatePrivate> uiPrivate(Query, ui); 1093 1094 if (uiPrivate) { 1095 // Assemble the view arguments in a property bag. 1096 HashMap<String, String> viewArguments; 1097 for (unsigned i = 0; i < paramNames.size(); i++) 1098 viewArguments.set(paramNames[i], paramValues[i]); 1099 COMPtr<IPropertyBag> viewArgumentsBag(AdoptCOM, COMPropertyBag<String>::adopt(viewArguments)); 1100 COMPtr<IDOMElement> containingElement(AdoptCOM, DOMElement::createInstance(&element)); 1101 1102 HashMap<String, COMVariant> arguments; 1103 1104 arguments.set(WebEmbeddedViewAttributesKey, viewArgumentsBag); 1105 arguments.set(WebEmbeddedViewBaseURLKey, url.string()); 1106 arguments.set(WebEmbeddedViewContainingElementKey, containingElement); 1107 arguments.set(WebEmbeddedViewMIMETypeKey, mimeType); 1108 1109 COMPtr<IPropertyBag> argumentsBag(AdoptCOM, COMPropertyBag<COMVariant>::adopt(arguments)); 1110 1111 COMPtr<IWebEmbeddedView> view; 1112 HRESULT result = uiPrivate->embeddedViewWithArguments(webView, m_webFrame, argumentsBag.get(), &view); 1113 if (SUCCEEDED(result)) { 1114 HWND parentWindow; 1115 HRESULT hr = webView->viewWindow(&parentWindow); 1116 ASSERT(SUCCEEDED(hr)); 1117 1118 return EmbeddedWidget::create(view.get(), &element, parentWindow, pluginSize); 1119 } 1120 } 1121 } 1122 1123 #if ENABLE(NETSCAPE_PLUGIN_API) 1124 Frame* frame = core(m_webFrame); 1125 auto pluginView = PluginView::create(frame, pluginSize, &element, url, paramNames, paramValues, mimeType, loadManually); 1126 1127 if (pluginView->status() == PluginStatusLoadedSuccessfully) 1128 return pluginView; 1129 1130 dispatchDidFailToStartPlugin(pluginView.get()); 1131 #endif 981 RefPtr<Widget> WebFrameLoaderClient::createPlugin(const IntSize&, HTMLPlugInElement&, const URL&, const Vector<String>&, const Vector<String>&, const String&, bool) 982 { 1132 983 return nullptr; 1133 984 } 1134 985 1135 void WebFrameLoaderClient::redirectDataToPlugin(Widget& pluginWidget) 1136 { 1137 // Ideally, this function shouldn't be necessary, see <rdar://problem/4852889> 1138 if (pluginWidget.isPluginView()) 1139 m_manualLoader = toPluginView(&pluginWidget); 1140 else 1141 m_manualLoader = static_cast<EmbeddedWidget*>(&pluginWidget); 986 void WebFrameLoaderClient::redirectDataToPlugin(Widget&) 987 { 1142 988 } 1143 989 -
trunk/Source/WebKitLegacy/win/WebCoreSupport/WebFrameLoaderClient.h
r278253 r278265 33 33 #include <WebCore/ProgressTrackerClient.h> 34 34 35 namespace WebCore {36 class PluginManualLoader;37 class PluginView;38 }39 40 35 class WebFrame; 41 36 class WebFramePolicyListener; … … 49 44 void setWebFrame(WebFrame* webFrame) { m_webFrame = webFrame; } 50 45 WebFrame* webFrame() const { return m_webFrame; } 51 52 void dispatchDidFailToStartPlugin(const WebCore::PluginView&) const;53 46 54 47 std::optional<WebCore::PageIdentifier> pageID() const final; … … 200 193 201 194 WebFrame* m_webFrame; 202 203 // Points to the manual loader that data should be redirected to.204 WebCore::PluginManualLoader* m_manualLoader;205 206 bool m_hasSentResponseToPlugin;207 195 }; -
trunk/Source/WebKitLegacy/win/WebCoreSupport/WebPluginInfoProvider.cpp
r278253 r278265 26 26 #include "WebPluginInfoProvider.h" 27 27 28 #include "PluginDatabase.h"29 30 28 using namespace WebCore; 31 29 … … 47 45 void WebPluginInfoProvider::refreshPlugins() 48 46 { 49 PluginDatabase::installedPlugins()->refresh();50 47 } 51 48 52 49 Vector<WebCore::PluginInfo> WebPluginInfoProvider::pluginInfo(WebCore::Page& page, std::optional<Vector<WebCore::SupportedPluginIdentifier>>&) 53 50 { 54 Vector<WebCore::PluginInfo> outPlugins; 55 const Vector<PluginPackage*>& plugins = PluginDatabase::installedPlugins()->plugins(); 56 57 outPlugins.resize(plugins.size()); 58 59 for (size_t i = 0; i < plugins.size(); ++i) { 60 PluginPackage* package = plugins[i]; 61 62 PluginInfo info; 63 info.name = package->name(); 64 info.file = package->fileName(); 65 info.desc = package->description(); 66 67 const MIMEToDescriptionsMap& mimeToDescriptions = package->mimeToDescriptions(); 68 69 info.mimes.reserveCapacity(mimeToDescriptions.size()); 70 71 MIMEToDescriptionsMap::const_iterator end = mimeToDescriptions.end(); 72 for (MIMEToDescriptionsMap::const_iterator it = mimeToDescriptions.begin(); it != end; ++it) { 73 MimeClassInfo mime; 74 75 mime.type = it->key; 76 mime.desc = it->value; 77 mime.extensions = package->mimeToExtensions().get(mime.type); 78 79 info.mimes.append(mime); 80 } 81 82 outPlugins[i] = info; 83 } 84 return outPlugins; 51 return { }; 85 52 } 86 53 87 54 Vector<WebCore::PluginInfo> WebPluginInfoProvider::webVisiblePluginInfo(WebCore::Page& page, const URL&) 88 55 { 89 std::optional<Vector<WebCore::SupportedPluginIdentifier>> supportedPluginNames; 90 return pluginInfo(page, supportedPluginNames); 56 return { }; 91 57 } -
trunk/Source/WebKitLegacy/win/WebFrame.cpp
r278253 r278265 32 32 #include "DOMCoreClasses.h" 33 33 #include "MarshallingHelpers.h" 34 #include "PluginDatabase.h"35 #include "PluginView.h"36 34 #include "WebActionPropertyBag.h" 37 35 #include "WebChromeClient.h" -
trunk/Source/WebKitLegacy/win/WebView.cpp
r278253 r278265 34 34 #include "MarshallingHelpers.h" 35 35 #include "PageStorageSessionProvider.h" 36 #include "PluginDatabase.h"37 #include "PluginView.h"38 36 #include "WebApplicationCache.h" 39 37 #include "WebBackForwardList.h" … … 2578 2576 ASSERT(webView); 2579 2577 2580 // Windows Media Player has a modal message loop that will deliver messages2581 // to us at inappropriate times and we will crash if we handle them when:2582 // they are delivered. We repost paint messages so that we eventually get2583 // a chance to paint once the modal loop has exited, but other messages2584 // aren't safe to repost, so we just drop them.2585 #if ENABLE(NETSCAPE_PLUGIN_API)2586 if (PluginView::isCallingPlugin()) {2587 if (message == WM_PAINT)2588 PostMessage(hWnd, message, wParam, lParam);2589 return 0;2590 }2591 #endif2592 2593 2578 bool handled = true; 2594 2579 … … 6022 6007 } 6023 6008 6024 HRESULT WebView::addAdditionalPluginDirectory(_In_ BSTR directory) 6025 { 6026 PluginDatabase::installedPlugins()->addExtraPluginDirectory(toString(directory)); 6009 HRESULT WebView::addAdditionalPluginDirectory(_In_ BSTR) 6010 { 6027 6011 return S_OK; 6028 6012 }
Note:
See TracChangeset
for help on using the changeset viewer.