QtWebKit plugins: Deletion and hiding
-
I am working on a Qt hybrid application, and I want to show a QWebView into another QWebView.
I have implemented correctly the "createPlugin":http://doc.qt.nokia.com/4.7/qwebpage.html#createPlugin function on a QWebPage-based class and the QWebView is shown and works.
The problem is that if I hide the embedded QWebView, the object is deleted. If I not hide it, the object shows in first plane always.
I searched Google for solutions but I only find this link, reporting the problem: "http://blog.forwardbias.in/2009/09/side-effects-of-using-qtwebkit-for-desktop-apps.html":http://blog.forwardbias.in/2009/09/side-effects-of-using-qtwebkit-for-desktop-apps.html
Is there any API or function to solve this problem? -
Could you provide a simple example? I am not sure to understand what is the problem.
What is you use case for embedding a view inside another? It sounds like this should be done by using iframes in your page.
-
Here is a code example.
@QObject *WebPage::createPlugin(
const QString &classid,
const QUrl &url,
const QStringList ¶mNames,
const QStringList & paramValues)
{
QWebView *view = new QWebView();
view->load(QUrl("http://developer.qt.nokia.com/"));
mainFrame()->addToJavaScriptWindowObject("renderer", view);
return view;
}@
With a complex workaround embedding QWebViews into iframes I get the QWebView not to be deleted, but now the QWebViews shown in first plane, so them overlap and I cannot view all the QWebViews, only the last inserted.
I cannot refuse to use a QWebView because an iframe does not offer the isolation that I want.
Thanks for paying attention on my problem :)