[Panel-devel] Plasma and the window manager (Re: KDE/kdebase/workspace/plasma/plasma)

Lubos Lunak l.lunak at suse.cz
Wed Nov 21 17:20:04 CET 2007


On Wednesday 21 of November 2007, Chani wrote:
> >  As far as I understood the systray widget cannot be handled normally
> > like others for whatever internal reasons, so if you need to keep it
> > separately, at least keep it in the toplevel Plasma window. That is, set
> > the Plasma toplevel widget as its parent, keep it as the topmost child
> > and keep the position relative to it.
>
> I... didn't fully understand that. I still know almost nothing about this
> windowy stuff; I'm just trying to make existing code less buggy. anyone got
> a link to a good tutorial? or want to do this themselves? (I can't be
> certain I'll have time to code again before 4.0 is tagged)

 It should be simple :). QWidget constructor has the QWidget* argument 
specifying the parent - if it's not set, the widget becomes a toplevel 
window, otherwise it's kept inside its parent. In the patch you sent, 
SystemTrayWidget needs the toplevel Plasma widget as its parent, when when 
using mapToGlobal(), instead use mapTo() with the parent (well, or 
mapToParent(), I see). Maybe you'll also need to call raise() on the tray 
widget somewhere. That should do.

-- 
Lubos Lunak
KDE developer
--------------------------------------------------------------
SUSE LINUX, s.r.o.   e-mail: l.lunak at suse.cz , l.lunak at kde.org
Lihovarska 1060/12   tel: +420 284 028 972
190 00 Prague 9      fax: +420 284 028 951
Czech Republic       http//www.suse.cz


More information about the Panel-devel mailing list