Netscape NPAPI and iframe
-
my webpage load Netscape NPAI plugin using embed tag and this is part of a div section. following by several IFrames to load different web pages. When this page invoked the plugin cover up all IFrames. I've tried to use z-index to see if it will work, but still no luck. The Netscape API is implemented as a Windowed plugin using Qt interfaces. This code is working fine with Firefox and Opera. The other problem is that my web page load different items which item can be render using the plugin, or just pure html generated by php and javascript. But once the web page that render by the plugin then that screen is on top all the time, the subsequence items that are in html just behind it. Can anyone give me some pointers as how to work around these issues? thx
-
As you said, you are using plugin in windowed mode, so of course they are on top.
Try using QGraphicsWebView for rendering your content. Plugins should be windowless when rendered through QGraphicsWebView.
-
[quote author="ndovp04" date="1289933473"]Thanks. I thought that QtWebKit doesn't support windowless plugin. When browser invoked NPP_SetWindow() then the NPWindow object is mapped to which QT Object?[/quote]
In Windowsless? I don't understand what you mean.
-
Sorry for not being cleared. During the NPAPI windowless plugin process which eventually the NPP_SetWindow(NPP instance, NPWindow* window) will be invoked (in this case WebKit backend) to pass to the client plugin the window object. I like to know the NPWindow* should be casted to which QT object? I can't find any documentation about this.
-
[quote author="ndovp04" date="1290014931"]Sorry for not being cleared. During the NPAPI windowless plugin process which eventually the NPP_SetWindow(NPP instance, NPWindow* window) will be invoked (in this case WebKit backend) to pass to the client plugin the window object. I like to know the NPWindow* should be casted to which QT object? I can't find any documentation about this.[/quote]
It looks like its null, and the rendering surface is passed via the expose events. You can check PluginViewQt.cpp to get the details, I don't know much about the implementation.