KJavaAppletWidget's usage of KWindowSystem

Martin Gräßlin mgraesslin at kde.org
Fri Feb 1 12:12:54 UTC 2013


Hi all,

I have sent this mail to kfm-devel some time ago, but have not received any 
reply so far. Therefore I try on frameworks-devel as it affects frameworks.

The class KJavaAppletWidget is using the method KWindowSystem::doNotManage() 
to tell KWin (via DBus) to not manage the applet window.

The method in question is used only by KStart and by the java applet and to be 
honest: I would like to get rid off it in Frameworks 5.

Through lots of git magic I was able to find the commit which added the 
functionality: kdelibs, 0838ff87 on 15th of July, 2000 by Matthias Ettrich 
with the very explaining commit message "do not manage magic". It doesn't help 
me to understand why it is needed :-) The KWin part clearly states that it is 
a HACK only for Java applets.

>From my understanding the method is wrong in general for the following 
reasons:
* works only with KWin
* uses D-Bus instead of X11
* if a window should not be managed by the window manager it should use the 
override redirect hint
* matching windows by title is broken by design
* adds a hack to a window manager to work around a Client (not good)

For me the important question is, whether this is still needed. And that is 
what I cannot test, as:
* I don't know of any web page still using Java Applets
* I have uninstalled Java after one of the recent security nightmares
* I don't want to install Java again due to the security issues

If anyone could enlighten me, I would be very happy :-)

If this functionality is no longer required, I would prepare a commit for 
frameworks 5 to remove it from KDE Frameworks 5 and mark the methods in KWin 
for removal. For KDE 4 life time we will keep the interface there, though I 
honestly don't know whether it's still functional ;-)

If it is still required, I would like to discuss what could be done to not 
need it. Apparently other window managers don't provide the KWin D-Bus 
interface and apparently other browser engines don't need to tell KWin about 
it. So there must be solutions which would not need this method.

Unrelated side-note: the code in KJavaAppletWidget is partially disabled in 
the frameworks branch.

Best Regards
Martin Gräßlin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20130201/ee499724/attachment.sig>


More information about the Kde-frameworks-devel mailing list