Dynamic panels

Aaron J. Seigo aseigo at kde.org
Fri Mar 21 21:12:51 CET 2008


On Friday 21 March 2008, Mark Constable wrote:
> I'm not sure if other people would like this but I most certainly
> would 

i'm in the same boat.

> and am prepared to spend time on it but I just need, or would 
> like, a few pointers where to start?

ok.. so .. to do this optimally:

* PanelView (in workspace/plasma/plasma/) would be modified to set a 
XInputMask for the area not covered by a containment.

* PanelView would maintain the autohide settings

* PanelView would *contain* a Plasma::View rather than be one when the mouse 
leaves the Plasma::View, PanelView would then move (or just hide() for 
instant hide) the Plasma::View.

together with the first point, this would mean:

* no moving of X11 windows (which is rediculously expensive, btw)

* it would work on xinerama screens, because we wouldn't be moving the window, 
just the contents

* we wouldn't have to poll for the mouse cursor as we did in KDE3, since we 
would just use the normal mouse events inside the PanelView

that's three major wins right there, two of them being performance wins and 
one of them a pretty signficant feature win for mult-screen users.

* bonus points: make PanelView be able to show multiple containments at once, 
limiting the number of PanelView widgets needed and removing the need to do 
collision management of PanelViews at the x11 level.

if we want to be really diabolical, we could experiment with making just one 
PanelView per screen, make it full full screen, no background painting and a 
big "donut hole" XInputMask in the middle and put *all* the panels on it. i 
have no idea what the implications/effects would be from the perspective of 
the window manager or x.org for performance, etc, though. so this would be a 
big experiment that might end up with nothing more than "this just isn't 
possible". good news is that we could try this after getting all the above 
working perfectly first.

-- 
Aaron J. Seigo
humru othro a kohnu se
GPG Fingerprint: 8B8B 2209 0C6F 7C47 B1EA  EE75 D6B7 2EB1 A7F1 DB43

KDE core developer sponsored by Trolltech
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 194 bytes
Desc: This is a digitally signed message part.
Url : http://mail.kde.org/pipermail/panel-devel/attachments/20080321/ac980c87/attachment.pgp 


More information about the Panel-devel mailing list