Bug 29549
| Summary: | [Qt] QWebPluginFactory: plugin widgets gets deleted on "display: none" | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Tor Arne Vestbø <vestbo> |
| Component: | Plug-ins | Assignee: | Nobody <webkit-unassigned> |
| Status: | RESOLVED INVALID | ||
| Severity: | Normal | CC: | hausmann, jturcotte, kenneth |
| Priority: | P2 | Keywords: | Qt |
| Version: | 528+ (Nightly build) | ||
| Hardware: | Other | ||
| OS: | All | ||
Tor Arne Vestbø
This bug report originated from Nokia internal issue QT-1181
--- Description ---
In the Documentation for QWebPluginFactory::create we mention that ownership of the returned object will be transferred to the caller.
Maybe we could elaborate more.
For example one customer had problems with how to hide a plugin.
When using a qt widget plugin or in general any <object>, they get deleted on display 'none'.
This means that on showing it again, one have to restore the new plugin/<object> to the _exact_
state as before it was hidden.
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Kenneth Rohde Christiansen
Not platform related. Changing to All.
Jocelyn Turcotte
The documentation seems ok to me, we could add details about the object livecycle.
As I understand hiding/showing the surrounding container will delete/create the plugin.
This is more dramatic and might be very annoying depending on the use case.
We need a test case.
Simon Hausmann
IMHO this is INVALID.
In Qt 4.4's WebKit there was a bug that the plugins never got deleted at all (leak). In Qt 4.5 we fixed the leak and now behave like the other ports when it comes to plugins: With 'display: none' the render object is destroyed and thus the plugin widget. There's nothing Qt specific here.