Title: [209840] trunk/Source/WebKit2
Revision
209840
Author
[email protected]
Date
2016-12-14 16:00:38 -0800 (Wed, 14 Dec 2016)

Log Message

Add WKContextRefreshPlugIns
https://bugs.webkit.org/show_bug.cgi?id=165879
rdar://problem/29602414

Reviewed by Tim Horton.

* UIProcess/API/C/WKContext.cpp:
(WKContextRefreshPlugIns):
* UIProcess/API/C/WKContext.h:
* UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::refreshPlugins):
* UIProcess/WebProcessPool.h:
* WebProcess/Plugins/WebPluginInfoProvider.h:
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::refreshPlugins):
* WebProcess/WebProcess.h:
* WebProcess/WebProcess.messages.in:

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (209839 => 209840)


--- trunk/Source/WebKit2/ChangeLog	2016-12-14 23:42:51 UTC (rev 209839)
+++ trunk/Source/WebKit2/ChangeLog	2016-12-15 00:00:38 UTC (rev 209840)
@@ -1,3 +1,23 @@
+2016-12-14  Anders Carlsson  <[email protected]>
+
+        Add WKContextRefreshPlugIns
+        https://bugs.webkit.org/show_bug.cgi?id=165879
+        rdar://problem/29602414
+
+        Reviewed by Tim Horton.
+
+        * UIProcess/API/C/WKContext.cpp:
+        (WKContextRefreshPlugIns):
+        * UIProcess/API/C/WKContext.h:
+        * UIProcess/WebProcessPool.cpp:
+        (WebKit::WebProcessPool::refreshPlugins):
+        * UIProcess/WebProcessPool.h:
+        * WebProcess/Plugins/WebPluginInfoProvider.h:
+        * WebProcess/WebProcess.cpp:
+        (WebKit::WebProcess::refreshPlugins):
+        * WebProcess/WebProcess.h:
+        * WebProcess/WebProcess.messages.in:
+
 2016-12-14  Tim Horton  <[email protected]>
 
         API Test Fullscreen.TopContentInset is asserting on Yosemite

Modified: trunk/Source/WebKit2/UIProcess/API/C/WKContext.cpp (209839 => 209840)


--- trunk/Source/WebKit2/UIProcess/API/C/WKContext.cpp	2016-12-14 23:42:51 UTC (rev 209839)
+++ trunk/Source/WebKit2/UIProcess/API/C/WKContext.cpp	2016-12-15 00:00:38 UTC (rev 209840)
@@ -353,6 +353,15 @@
 #endif
 }
 
+void WKContextRefreshPlugIns(WKContextRef context)
+{
+#if ENABLE(NETSCAPE_PLUGIN_API)
+    toImpl(context)->refreshPlugins();
+#else
+    UNUSED_PARAM(context);
+#endif
+}
+
 void WKContextRegisterURLSchemeAsEmptyDocument(WKContextRef contextRef, WKStringRef urlScheme)
 {
     toImpl(contextRef)->registerURLSchemeAsEmptyDocument(toImpl(urlScheme)->string());

Modified: trunk/Source/WebKit2/UIProcess/API/C/WKContext.h (209839 => 209840)


--- trunk/Source/WebKit2/UIProcess/API/C/WKContext.h	2016-12-14 23:42:51 UTC (rev 209839)
+++ trunk/Source/WebKit2/UIProcess/API/C/WKContext.h	2016-12-15 00:00:38 UTC (rev 209840)
@@ -162,6 +162,7 @@
 WK_EXPORT void WKContextSetPlugInAutoStartOriginHashes(WKContextRef context, WKDictionaryRef dictionary);
 WK_EXPORT void WKContextSetPlugInAutoStartOrigins(WKContextRef contextRef, WKArrayRef arrayRef);
 WK_EXPORT void WKContextSetPlugInAutoStartOriginsFilteringOutEntriesAddedAfterTime(WKContextRef contextRef, WKDictionaryRef dictionaryRef, double time);
+WK_EXPORT void WKContextRefreshPlugIns(WKContextRef context);
 
 #ifdef __cplusplus
 }

Modified: trunk/Source/WebKit2/UIProcess/WebProcessPool.cpp (209839 => 209840)


--- trunk/Source/WebKit2/UIProcess/WebProcessPool.cpp	2016-12-14 23:42:51 UTC (rev 209839)
+++ trunk/Source/WebKit2/UIProcess/WebProcessPool.cpp	2016-12-15 00:00:38 UTC (rev 209840)
@@ -866,6 +866,13 @@
 
     m_pluginInfoStore.setAdditionalPluginsDirectories(directories);
 }
+
+void WebProcessPool::refreshPlugins()
+{
+    m_pluginInfoStore.refresh();
+    sendToAllProcesses(Messages::WebProcess::RefreshPlugins());
+}
+
 #endif // ENABLE(NETSCAPE_PLUGIN_API)
 
 pid_t WebProcessPool::networkProcessIdentifier()

Modified: trunk/Source/WebKit2/UIProcess/WebProcessPool.h (209839 => 209840)


--- trunk/Source/WebKit2/UIProcess/WebProcessPool.h	2016-12-14 23:42:51 UTC (rev 209839)
+++ trunk/Source/WebKit2/UIProcess/WebProcessPool.h	2016-12-15 00:00:38 UTC (rev 209840)
@@ -181,6 +181,7 @@
 
 #if ENABLE(NETSCAPE_PLUGIN_API)
     void setAdditionalPluginsDirectory(const String&);
+    void refreshPlugins();
 
     PluginInfoStore& pluginInfoStore() { return m_pluginInfoStore; }
 

Modified: trunk/Source/WebKit2/WebProcess/Plugins/WebPluginInfoProvider.h (209839 => 209840)


--- trunk/Source/WebKit2/WebProcess/Plugins/WebPluginInfoProvider.h	2016-12-14 23:42:51 UTC (rev 209839)
+++ trunk/Source/WebKit2/WebProcess/Plugins/WebPluginInfoProvider.h	2016-12-15 00:00:38 UTC (rev 209840)
@@ -42,10 +42,11 @@
     void clearPluginClientPolicies();
 #endif
 
+    void refreshPlugins() override;
+
 private:
     WebPluginInfoProvider();
 
-    void refreshPlugins() override;
     void getPluginInfo(WebCore::Page&, Vector<WebCore::PluginInfo>&) override;
     void getWebVisiblePluginInfo(WebCore::Page&, Vector<WebCore::PluginInfo>&) override;
 

Modified: trunk/Source/WebKit2/WebProcess/WebProcess.cpp (209839 => 209840)


--- trunk/Source/WebKit2/WebProcess/WebProcess.cpp	2016-12-14 23:42:51 UTC (rev 209839)
+++ trunk/Source/WebKit2/WebProcess/WebProcess.cpp	2016-12-15 00:00:38 UTC (rev 209840)
@@ -922,6 +922,13 @@
 #endif
 }
 
+void WebProcess::refreshPlugins()
+{
+#if ENABLE(NETSCAPE_PLUGIN_API)
+    WebPluginInfoProvider::singleton().refreshPlugins();
+#endif
+}
+
 static void fromCountedSetToHashMap(TypeCountSet* countedSet, HashMap<String, uint64_t>& map)
 {
     TypeCountSet::const_iterator end = countedSet->end();

Modified: trunk/Source/WebKit2/WebProcess/WebProcess.h (209839 => 209840)


--- trunk/Source/WebKit2/WebProcess/WebProcess.h	2016-12-14 23:42:51 UTC (rev 209839)
+++ trunk/Source/WebKit2/WebProcess/WebProcess.h	2016-12-15 00:00:38 UTC (rev 209840)
@@ -131,6 +131,7 @@
     void plugInDidReceiveUserInteraction(const String& pageOrigin, const String& pluginOrigin, const String& mimeType, WebCore::SessionID);
     void setPluginLoadClientPolicy(uint8_t policy, const String& host, const String& bundleIdentifier, const String& versionString);
     void clearPluginClientPolicies();
+    void refreshPlugins();
 
     bool fullKeyboardAccessEnabled() const { return m_fullKeyboardAccessEnabled; }
 

Modified: trunk/Source/WebKit2/WebProcess/WebProcess.messages.in (209839 => 209840)


--- trunk/Source/WebKit2/WebProcess/WebProcess.messages.in	2016-12-14 23:42:51 UTC (rev 209839)
+++ trunk/Source/WebKit2/WebProcess/WebProcess.messages.in	2016-12-15 00:00:38 UTC (rev 209840)
@@ -58,6 +58,7 @@
     ResetPlugInAutoStartOriginHashes(HashMap<WebCore::SessionID, HashMap<uint32_t,double>> hashes)
     SetPluginLoadClientPolicy(uint8_t policy, String host, String bundleIdentifier, String versionString)
     ClearPluginClientPolicies()
+    RefreshPlugins()
 
     void StartMemorySampler(WebKit::SandboxExtension::Handle sampleLogFileHandle, String sampleLogFilePath, double interval);
     void StopMemorySampler();
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to