Bug 299690

Summary: [Oxygen-Transparent] - kparts plugin docking broken in Firefox
Product: [Plasma] Oxygen Reporter: Shmerl <shtetldik>
Component: styleAssignee: Hugo Pereira Da Costa <hugo.pereira.da.costa>
Status: RESOLVED UPSTREAM    
Severity: normal CC: arno, hugo.pereira.da.costa
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Debian testing   
OS: Linux   
URL: http://forum.kde.org/viewtopic.php?f=20&t=99594
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Shmerl 2012-05-09 16:23:55 UTC
When oxygen-transparent is installed, and some transparency is used, kparts plugin doesn't dock inside Firefox, but opens in a separate window (for example for PDFs using okular). The offending setting is found in ~/.kde/share/config/oxygenrc:

[Common]
BackgroundOpacity=211

When BackgroundOpacity setting is removed, the problem goes away. Apparently something is broken with the plugin handling the opacity.

Reproducible: Always

Steps to Reproduce:
With Firefox, kparts plugin and oxygen transparent installed, open some PDF file in Firefox.

Actual Results:  
The okular kparts plugin opens on the side, instead of inside the browser.

Expected Results:  
The okular kparts plugin should open inside the browser.

See http://forum.kde.org/viewtopic.php?f=20&t=99594 for more details.
Comment 1 Hugo Pereira Da Costa 2012-05-09 16:31:39 UTC
Makes perfect sense.
When assigning ARGB colormap to windows, in order to have transparency (non opaque BackgroundOpacity) Qt actually creates a new X11 window (with a different colormap). So you lose the docking at that moment.
Only way is to blacklist either the (kpart) application (need to figure out it's name) or the relevant widget.
I'll investigate a bit. 

Thanks for reporting!
Comment 2 Shmerl 2012-05-09 16:38:58 UTC
I tried to blacklist the 'plugin-container' (that's the name of the process which Firefox runs for embedding plugins), but that didn't help.

The running process in my environment looks like:

/opt/Mozilla/firefox/plugin-container /usr/lib/mozilla/plugins/libkpartsplugin.so -greomni /opt/Mozilla/firefox/omni.ja 13551 true plugin
Comment 3 Arno Rehn 2012-07-23 13:21:37 UTC
A new version of kpartsplugin has been published which fixes the application name. You can now blacklist "kpartsplugin" in oxygen transparent and everything will work as expected.

(see https://kde-apps.org/content/show.php/KParts+Plugin?content=125066 )