Bug 35112

Summary: [Qt] Windowed netscape plugins don't work with QGraphicsWebView on Symbian
Product: WebKit Reporter: nokiabugz
Component: Plug-insAssignee: 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 Flags
Patch
none
Patch .
none
Patch v2
none
Patch none

nokiabugz
Reported 2010-02-18 10:37:18 PST
STEPS TO REPRODUCE: 1. Load the sample plugin in a QGraphicsWebView 2. Observe the poor rendering
Attachments
Patch (4.58 KB, patch)
2010-03-22 06:25 PDT, Yael
no flags
Patch . (69.69 KB, patch)
2010-03-22 12:44 PDT, Yael
no flags
Patch v2 (5.66 KB, patch)
2010-03-24 17:54 PDT, Yael
no flags
Patch (5.63 KB, patch)
2010-03-24 18:01 PDT, Yael
no flags
Laszlo Gombos
Comment 1 2010-03-02 07:43:34 PST
Is this bug really only for Symbian ?
Yael
Comment 2 2010-03-02 07:49:29 PST
(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.
Tor Arne Vestbø
Comment 3 2010-03-05 09:11:42 PST
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
Simon Hausmann
Comment 4 2010-03-17 15:16:02 PDT
Yael, can you verify that this bug still exists? We don't have the plugin available for testing.
Yael
Comment 5 2010-03-17 16:12:04 PDT
(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.
Yael
Comment 6 2010-03-19 05:18:20 PDT
Agreed with Abhinav that I will fix this.
Yael
Comment 7 2010-03-22 06:25:48 PDT
Created attachment 51280 [details] Patch Add a proxy widget when loading a windowed plugin in a QGraphicsWebView.
Laszlo Gombos
Comment 8 2010-03-22 10:32:47 PDT
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.
Yael
Comment 9 2010-03-22 12:44:58 PDT
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.
Yael
Comment 10 2010-03-22 12:46:56 PDT
Sorry, Attachment added to the wrong browser window :-(
Yael
Comment 11 2010-03-24 17:54:09 PDT
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.
Yael
Comment 12 2010-03-24 18:01:55 PDT
Created attachment 51571 [details] Patch Removed \n that crept into the files.
Laszlo Gombos
Comment 13 2010-03-25 07:44:15 PDT
Comment on attachment 51571 [details] Patch All previous comments addressed; looks good to me. r+. Thanks.
WebKit Commit Bot
Comment 14 2010-03-25 08:06:20 PDT
Comment on attachment 51571 [details] Patch Clearing flags on attachment: 51571 Committed r56546: <http://trac.webkit.org/changeset/56546>
WebKit Commit Bot
Comment 15 2010-03-25 08:06:26 PDT
All reviewed patches have been landed. Closing bug.
Simon Hausmann
Comment 16 2010-03-29 06:52:53 PDT
Cherry-picked into qtwebkit-4.6 with commit e9151b11e974f0aa47fd40c225f88f35ced91496
Simon Hausmann
Comment 17 2010-04-07 00:46:51 PDT
Revision r56546 cherry-picked into qtwebkit-2.0 with commit 7d6d3dfe8a5828a30f5903b523d3c30a0449b915
Note You need to log in before you can comment on or make changes to this bug.