kwin thumbnail effect in Workspaces 2
Aaron J. Seigo
aseigo at kde.org
Mon Jan 21 11:03:54 UTC 2013
On Thursday, January 17, 2013 08:04:14 Martin Gräßlin wrote:
> So my suggestion is to send updates for needed thumbnails together with the
> damage events. We have to look into how we can achieve it, but it would
> bring some advantages:
> * existing code path inside KWin can be reused
> * thumbnail is always the latest version
> * no memory read-backs from GPU
> * if thumbnail is not needed (because area is not rendered) it can be
> discarded
sounds good, particularly as it would keep all the UI interaction in the host
application (e.g. the shell).
as you noted, it would need to be *fast* as that was one problem we had in the
past with "kwin renders the thumbnails, but the UI is managed in the host
application": the UI would update/change and the thumbnail painting would be
out of sync with it.
this was particularly visible when there was custom chrome around the
thumbnail, such as the close button in Active's Peek area. in fact, that is
probably still a problem: the close button needs to be placed visually next to
the thumbnail, which means the UI needs to know the thumbnail geometry.
i dislike the idea of trying to coordinate that geometry placement between two
processes (it's the same genre of problem we have right now), so the chrome
should be rendered with the thumbnail itself.
.. but then we have the issue of thumbnails of different sizes (widths, most
often, as we tend to show them in horizontal rows right now). not all windows
will thumbnail to the same size, and showing those in a row means spacing
between items will be (visually) different.
in QML terms, the perfect solution would be an item than knows the geometry of
the thumbnail it will be rendering, and then all of the above problems go
away.
but if that QML item is not in kwin (something that should be avoided), that
implies making information available from kwin about thumbnail sizes for
specific windows.
(and all this to ensure that we have fluidly updating thumbnails ...)
--
Aaron J. Seigo
-------------- 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/plasma-devel/attachments/20130121/67f7f96d/attachment.sig>
More information about the Plasma-devel
mailing list