Title: [178968] trunk/Source
Revision
178968
Author
commit-qu...@webkit.org
Date
2015-01-22 16:18:35 -0800 (Thu, 22 Jan 2015)

Log Message

[Win] No plugin content on some sites.
https://bugs.webkit.org/show_bug.cgi?id=140780

Patch by pe...@outlook.com <pe...@outlook.com> on 2015-01-22
Reviewed by Anders Carlsson.

Source/WebCore:

Return script instance from ScriptController::createScriptInstanceForWidget(),
instead of always returning null.

* bindings/js/ScriptController.cpp:
(WebCore::ScriptController::createScriptInstanceForWidget):
* plugins/PluginViewBase.h:
(WebCore::PluginViewBase::bindingInstance):

Source/WebKit/win:

Add override modifier to bindingInstance method.

* Plugins/PluginView.h:

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (178967 => 178968)


--- trunk/Source/WebCore/ChangeLog	2015-01-23 00:17:13 UTC (rev 178967)
+++ trunk/Source/WebCore/ChangeLog	2015-01-23 00:18:35 UTC (rev 178968)
@@ -1,3 +1,18 @@
+2015-01-22  pe...@outlook.com  <pe...@outlook.com>
+
+        [Win] No plugin content on some sites.
+        https://bugs.webkit.org/show_bug.cgi?id=140780
+
+        Reviewed by Anders Carlsson.
+
+        Return script instance from ScriptController::createScriptInstanceForWidget(),
+        instead of always returning null.
+
+        * bindings/js/ScriptController.cpp:
+        (WebCore::ScriptController::createScriptInstanceForWidget):
+        * plugins/PluginViewBase.h:
+        (WebCore::PluginViewBase::bindingInstance):
+
 2015-01-22  Jer Noble  <jer.no...@apple.com>
 
         [Mac][EME] Adopt changes to AVStreamSession class methods

Modified: trunk/Source/WebCore/bindings/js/ScriptController.cpp (178967 => 178968)


--- trunk/Source/WebCore/bindings/js/ScriptController.cpp	2015-01-23 00:17:13 UTC (rev 178967)
+++ trunk/Source/WebCore/bindings/js/ScriptController.cpp	2015-01-23 00:18:35 UTC (rev 178968)
@@ -39,6 +39,7 @@
 #include "Page.h"
 #include "PageConsoleClient.h"
 #include "PageGroup.h"
+#include "PluginViewBase.h"
 #include "ScriptSourceCode.h"
 #include "ScriptableDocumentParser.h"
 #include "Settings.h"
@@ -403,9 +404,12 @@
 #endif
 
 #if !PLATFORM(COCOA)
-PassRefPtr<JSC::Bindings::Instance> ScriptController::createScriptInstanceForWidget(Widget*)
+PassRefPtr<JSC::Bindings::Instance> ScriptController::createScriptInstanceForWidget(Widget* widget)
 {
-    return nullptr;
+    if (!is<PluginViewBase>(*widget))
+        return nullptr;
+
+    return downcast<PluginViewBase>(*widget).bindingInstance();
 }
 #endif
 

Modified: trunk/Source/WebCore/plugins/PluginViewBase.h (178967 => 178968)


--- trunk/Source/WebCore/plugins/PluginViewBase.h	2015-01-23 00:17:13 UTC (rev 178967)
+++ trunk/Source/WebCore/plugins/PluginViewBase.h	2015-01-23 00:18:35 UTC (rev 178968)
@@ -26,6 +26,7 @@
 #define PluginWidget_h
 
 #include "AudioHardwareListener.h"
+#include "BridgeJSC.h"
 #include "PlatformLayer.h"
 #include "ScrollTypes.h"
 #include "Widget.h"
@@ -79,6 +80,8 @@
 
     virtual void setJavaScriptPaused(bool) { }
 
+    virtual PassRefPtr<JSC::Bindings::Instance> bindingInstance() { return nullptr; }
+
 protected:
     explicit PluginViewBase(PlatformWidget widget = 0) : Widget(widget) { }
 };

Modified: trunk/Source/WebKit/win/ChangeLog (178967 => 178968)


--- trunk/Source/WebKit/win/ChangeLog	2015-01-23 00:17:13 UTC (rev 178967)
+++ trunk/Source/WebKit/win/ChangeLog	2015-01-23 00:18:35 UTC (rev 178968)
@@ -1,3 +1,14 @@
+2015-01-22  pe...@outlook.com  <pe...@outlook.com>
+
+        [Win] No plugin content on some sites.
+        https://bugs.webkit.org/show_bug.cgi?id=140780
+
+        Reviewed by Anders Carlsson.
+
+        Add override modifier to bindingInstance method.
+
+        * Plugins/PluginView.h:
+
 2015-01-22  Brent Fulgham  <bfulg...@apple.com>
 
         [Win] Expose missing editing features through WebView interface

Modified: trunk/Source/WebKit/win/Plugins/PluginView.h (178967 => 178968)


--- trunk/Source/WebKit/win/Plugins/PluginView.h	2015-01-23 00:17:13 UTC (rev 178967)
+++ trunk/Source/WebKit/win/Plugins/PluginView.h	2015-01-23 00:18:35 UTC (rev 178968)
@@ -129,7 +129,7 @@
 #if ENABLE(NETSCAPE_PLUGIN_API)
         NPObject* npObject();
 #endif
-        PassRefPtr<JSC::Bindings::Instance> bindingInstance();
+        virtual PassRefPtr<JSC::Bindings::Instance> bindingInstance() override;
 
         PluginStatus status() const { return m_status; }
 
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to