Summary: | [Qt] Windowed netscape plugins don't work with QGraphicsWebView on Symbian | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | nokiabugz | ||||||||||
Component: | Plug-ins | Assignee: | Yael <yael> | ||||||||||
Status: | CLOSED FIXED | ||||||||||||
Severity: | Critical | CC: | commit-queue, hausmann, laszlo.gombos, vestbo, yael | ||||||||||
Priority: | P2 | Keywords: | Qt | ||||||||||
Version: | 528+ (Nightly build) | ||||||||||||
Hardware: | S60 Hardware | ||||||||||||
OS: | S60 3rd edition | ||||||||||||
Bug Depends on: | |||||||||||||
Bug Blocks: | 35784, 35962 | ||||||||||||
Attachments: |
|
Description
nokiabugz
2010-02-18 10:37:18 PST
Is this bug really only for Symbian ? (In reply to comment #1) > Is this bug really only for Symbian ? That would make sense. At the time that we implemented Netscape Plugins for Symbian, QGraphicsWebView was under development and there was no API for getting the plugin's parent. I have left a FIXME in PluginViewSymbian.cpp about that. Please follow the QtWebKit bug reporting guidelines when reporting bugs. See http://trac.webkit.org/wiki/QtWebKitBugs Specifically: - The 'QtWebKit' component should be used for bugs/features in the QtWebKit API layer, not to signify that the bug is specific to the Qt port of WebKit http://trac.webkit.org/wiki/QtWebKitBugs#Component - Priority is set by developers when scheduling and triaging tasks, please leave this at the default priority. http://trac.webkit.org/wiki/QtWebKitBugs#Priority - Choose a descriptive summary/title for the bug and prefix the summary with "[Qt]" if the bug only applies to the Qt-port. https://trac.webkit.org/wiki/QtWebKitBugs#Summary Yael, can you verify that this bug still exists? We don't have the plugin available for testing. (In reply to comment #4) > Yael, can you verify that this bug still exists? > > We don't have the plugin available for testing. Yes, this is still a problem. Abhinav is working on a fix for it. Agreed with Abhinav that I will fix this. Created attachment 51280 [details]
Patch
Add a proxy widget when loading a windowed plugin in a QGraphicsWebView.
Comment on attachment 51280 [details] Patch > Index: WebCore/plugins/symbian/PluginContainerSymbian.cpp > =================================================================== > --- WebCore/plugins/symbian/PluginContainerSymbian.cpp (revision 56331) > +++ WebCore/plugins/symbian/PluginContainerSymbian.cpp (working copy) > @@ -32,12 +32,14 @@ > > using namespace WebCore; > > -PluginContainerSymbian::PluginContainerSymbian(PluginView* view, QWidget* parent) > +PluginContainerSymbian::PluginContainerSymbian(PluginView* view, QWidget* parent, QGraphicsProxyWidget* proxy) > : m_parent(parent) > , m_pluginView(view) > + , m_proxy(proxy) > , m_hasPendingGeometryChange(false) > { > - setParent(m_parent); > + if (!proxy) > + setParent(m_parent); > } m_proxy does not need to be a member of PluginContainerSymbian; same with m_parent (in already landed code). Calling setParent() in platformStart() would eliminate the need to pass in both the parent and the proxy to the PluginContainerSymbian constructor and in would - my view - make the code more readable. Created attachment 51335 [details]
Patch .
Updated the tests from the previous patch
This patch adds support, test results and enables the PROGRESS_TAG flag on the Mac port of Safari.
Sorry, Attachment added to the wrong browser window :-( Created attachment 51569 [details]
Patch v2
Wrap a proxy widget around PluginSymbianContainer.
Some minor changes in using QPageClient API, due to the changes that were introduced in QPageClient after Symbian plugins implementation was done.
Created attachment 51571 [details]
Patch
Removed \n that crept into the files.
Comment on attachment 51571 [details]
Patch
All previous comments addressed; looks good to me.
r+. Thanks.
Comment on attachment 51571 [details] Patch Clearing flags on attachment: 51571 Committed r56546: <http://trac.webkit.org/changeset/56546> All reviewed patches have been landed. Closing bug. Cherry-picked into qtwebkit-4.6 with commit e9151b11e974f0aa47fd40c225f88f35ced91496 Revision r56546 cherry-picked into qtwebkit-2.0 with commit 7d6d3dfe8a5828a30f5903b523d3c30a0449b915 |