~loic.molinari/qtmir/multi-bufferstream-support-fixes

Viewing all changes in revision 387.

  • Committer: Christopher James Halse Rogers
  • Date: 2015-10-15 07:05:21 UTC
  • Revision ID: christopher.halse.rogers@canonical.com-20151015070521-88j1zigp0ltoq9qm
MirSurface/MirSurfaceItem: Implement multi-BufferStream surfaces.

Since multi-BufferStream surfaces are trivial scenegraphs themselves, implement this
as QSGNode *MirSurface::updateSubgraph(QSGNode*).

Rather than having the MirSurfaceItem be a textureProvider, use updatePaintNode to
refresh the surface sub-graph.

In turn, store the MirBufferSGTexture in a new QSGMirRenderableNode which owns the
resources and updates them. This frees us from the manual resource management;
everything is owned by the QSGNode, and Qt will clean everything up appropriately.

expand all expand all

Show diffs side-by-side

added added

removed removed

Lines of Context: