<feed xmlns='http://www.w3.org/2005/Atom'>
<title>qt/qtdeclarative.git/src/quick/scenegraph/qsgrenderloop.cpp, branch wip/gc</title>
<subtitle>Qt Declarative (Quick 2)
</subtitle>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/'/>
<entry>
<title>Use global context sharing from QtGui instead of QSGContext</title>
<updated>2014-04-04T11:49:51+00:00</updated>
<author>
<name>Jocelyn Turcotte</name>
<email>jocelyn.turcotte@digia.com</email>
</author>
<published>2014-03-28T14:36:55+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=82e4ee03918a8abef4479ae67f259bfae4e6b79c'/>
<id>82e4ee03918a8abef4479ae67f259bfae4e6b79c</id>
<content type='text'>
This removes QSGContext::sharedOpenGLContext and replace its uses
with QOpenGLContextPrivate::globalShareContext, which is also going
to be used by QOpenGLWidget and QQuickWidget.

Change-Id: I1e296c3e6832f717caaf31ba7d7b27c06249219b
Reviewed-by: Laszlo Agocs &lt;laszlo.agocs@digia.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This removes QSGContext::sharedOpenGLContext and replace its uses
with QOpenGLContextPrivate::globalShareContext, which is also going
to be used by QOpenGLWidget and QQuickWidget.

Change-Id: I1e296c3e6832f717caaf31ba7d7b27c06249219b
Reviewed-by: Laszlo Agocs &lt;laszlo.agocs@digia.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Destroy render loop when QCoreApplication is cleaned up.</title>
<updated>2014-03-29T06:35:29+00:00</updated>
<author>
<name>Gunnar Sletta</name>
<email>gunnar.sletta@jollamobile.com</email>
</author>
<published>2014-03-28T13:52:26+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=c19962a142c529998ff7c6261fa098f33c646c3d'/>
<id>c19962a142c529998ff7c6261fa098f33c646c3d</id>
<content type='text'>
Doing it on 'aboutToQuit' meant we would clean it up whenever an
application ran QCoreApp::exec() which could be multiple times
per application run.

Change-Id: I59e06398a551ae7979e3832dff811937037fa106
Reviewed-by: Robin Burchell &lt;robin+qt@viroteck.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Doing it on 'aboutToQuit' meant we would clean it up whenever an
application ran QCoreApp::exec() which could be multiple times
per application run.

Change-Id: I59e06398a551ae7979e3832dff811937037fa106
Reviewed-by: Robin Burchell &lt;robin+qt@viroteck.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix QQuickView::grabWindow() on retina displays</title>
<updated>2014-03-20T21:15:50+00:00</updated>
<author>
<name>Morten Johan Sørvig</name>
<email>morten.sorvig@digia.com</email>
</author>
<published>2014-03-20T13:33:06+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=20d9454ce6c32e61794f68d75fc82bd67737a306'/>
<id>20d9454ce6c32e61794f68d75fc82bd67737a306</id>
<content type='text'>
Multiply by window-&gt;devicePixelRatio() at all
qt_gl_read_framebuffer() call sites.

Task-number: QTBUG-35962
Change-Id: If58e4f97fc5d931ba2e222f8cb1a0641d52c3257
Reviewed-by: Gunnar Sletta &lt;gunnar.sletta@jollamobile.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Multiply by window-&gt;devicePixelRatio() at all
qt_gl_read_framebuffer() call sites.

Task-number: QTBUG-35962
Change-Id: If58e4f97fc5d931ba2e222f8cb1a0641d52c3257
Reviewed-by: Gunnar Sletta &lt;gunnar.sletta@jollamobile.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix potential crash during shutdown for QQuickWindows</title>
<updated>2014-03-17T14:45:45+00:00</updated>
<author>
<name>Gunnar Sletta</name>
<email>gunnar.sletta@jollamobile.com</email>
</author>
<published>2014-03-14T14:15:26+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=3f362cdf9304afeed06081cd5abfcaf6aaabe19e'/>
<id>3f362cdf9304afeed06081cd5abfcaf6aaabe19e</id>
<content type='text'>
The cleanup() function would deregister the render loop from all
windows the render loop had seen, but the render loop doesn't see
windows until the window gets a showEvent and for some implementations
it was removed as a result of hideEvent. So add explicit tracking to
QSGRenderLoop which is managed by QQuickWindow's constructor and
destructor. With this, we no longer need the lists from the
subclasses, so these functions are removed again.

Change-Id: I05e5507ad57e23c80bacd99752654cc7d0890dc1
Reviewed-by: Paul Olav Tvete &lt;paul.tvete@digia.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The cleanup() function would deregister the render loop from all
windows the render loop had seen, but the render loop doesn't see
windows until the window gets a showEvent and for some implementations
it was removed as a result of hideEvent. So add explicit tracking to
QSGRenderLoop which is managed by QQuickWindow's constructor and
destructor. With this, we no longer need the lists from the
subclasses, so these functions are removed again.

Change-Id: I05e5507ad57e23c80bacd99752654cc7d0890dc1
Reviewed-by: Paul Olav Tvete &lt;paul.tvete@digia.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Unset the current gl window when deleted</title>
<updated>2014-03-17T07:39:07+00:00</updated>
<author>
<name>Giulio Camuffo</name>
<email>giuliocamuffo@gmail.com</email>
</author>
<published>2014-03-16T09:32:30+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=1bec5e806c909d723994dab46271dfe6f60db6cd'/>
<id>1bec5e806c909d723994dab46271dfe6f60db6cd</id>
<content type='text'>
This does in the QSGGuiThreadRenderLoop what 403045a did for the
QSGThreadedRenderLoop. Fix a memory corruption in Mesa's dri2 EGL
when setting a window current after deleting the previous current
one.

Change-Id: I8df0bacdf12f71e969a9ea39842a402c9a2a303f
Reviewed-by: Gunnar Sletta &lt;gunnar.sletta@jollamobile.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This does in the QSGGuiThreadRenderLoop what 403045a did for the
QSGThreadedRenderLoop. Fix a memory corruption in Mesa's dri2 EGL
when setting a window current after deleting the previous current
one.

Change-Id: I8df0bacdf12f71e969a9ea39842a402c9a2a303f
Reviewed-by: Gunnar Sletta &lt;gunnar.sletta@jollamobile.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Make sure QSGRenderLoop is cleaned up cleanly.</title>
<updated>2014-03-14T09:45:53+00:00</updated>
<author>
<name>Gunnar Sletta</name>
<email>gunnar.sletta@jollamobile.com</email>
</author>
<published>2014-03-05T14:38:02+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=1656d6006bb797ad8489a0d8034f65d670895834'/>
<id>1656d6006bb797ad8489a0d8034f65d670895834</id>
<content type='text'>
e13547c595913c58e6bd6a5ed80fdc729fae7d47 used a global static to clean
up QSGRenderLoop which is triggered very late, potentially after
SG backend API plugins have been unloaded. This results in crashes
when used in combination with scenegraph-playgrounds's customcontext.

Partially revert the change and instead clean up at the time of
QApp::aboutToQuit and make sure we also disconnect cleanly from
all QQuickWindows.

This change also ensures that QSGRenderLoop::windowDestroyed() gets
called for all QQuickWindows registered with the render loop. This
ensures that rendering stops and that scene graph nodes and resources
will be cleaned up regardless of whether the application has
remembered to delete the window or not. This is a good thing as it
makes the scene graph shutdown a bit cleaner.

Change-Id: I9cb9093979f8eac05542f118a6ff9cfe5c84f745
Reviewed-by: Paul Olav Tvete &lt;paul.tvete@digia.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
e13547c595913c58e6bd6a5ed80fdc729fae7d47 used a global static to clean
up QSGRenderLoop which is triggered very late, potentially after
SG backend API plugins have been unloaded. This results in crashes
when used in combination with scenegraph-playgrounds's customcontext.

Partially revert the change and instead clean up at the time of
QApp::aboutToQuit and make sure we also disconnect cleanly from
all QQuickWindows.

This change also ensures that QSGRenderLoop::windowDestroyed() gets
called for all QQuickWindows registered with the render loop. This
ensures that rendering stops and that scene graph nodes and resources
will be cleaned up regardless of whether the application has
remembered to delete the window or not. This is a good thing as it
makes the scene graph shutdown a bit cleaner.

Change-Id: I9cb9093979f8eac05542f118a6ff9cfe5c84f745
Reviewed-by: Paul Olav Tvete &lt;paul.tvete@digia.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Consolidate context creation failure handling in Quick.</title>
<updated>2014-03-13T12:39:54+00:00</updated>
<author>
<name>Friedemann Kleint</name>
<email>Friedemann.Kleint@digia.com</email>
</author>
<published>2014-03-10T09:53:49+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=b8afc009afcca84a3fd3d5617dfe96c729c531aa'/>
<id>b8afc009afcca84a3fd3d5617dfe96c729c531aa</id>
<content type='text'>
Add QQuickWidget::sceneGraphError() equivalent to
QQuickWindow::sceneGraphError(), move message formatting code
to QQuickWindowPrivate.

Change-Id: I18cd4d7e0f6ee1011c29375218dc6a044b0d2cf2
Reviewed-by: Laszlo Agocs &lt;laszlo.agocs@digia.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add QQuickWidget::sceneGraphError() equivalent to
QQuickWindow::sceneGraphError(), move message formatting code
to QQuickWindowPrivate.

Change-Id: I18cd4d7e0f6ee1011c29375218dc6a044b0d2cf2
Reviewed-by: Laszlo Agocs &lt;laszlo.agocs@digia.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove isES() usage in scenegraph</title>
<updated>2014-03-04T11:27:11+00:00</updated>
<author>
<name>Laszlo Agocs</name>
<email>laszlo.agocs@digia.com</email>
</author>
<published>2014-03-04T10:28:44+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=fb81479a16e5a96b87c53c7eaaaa74871cd7d0f7'/>
<id>fb81479a16e5a96b87c53c7eaaaa74871cd7d0f7</id>
<content type='text'>
The error signal patch added some usages of QOpenGLFunctions::isES().
These need to be temporarily removed.

Change-Id: Ibd1d8094059020708aefe4b3502ba56d624928b3
Reviewed-by: Friedemann Kleint &lt;Friedemann.Kleint@digia.com&gt;
Reviewed-by: Jørgen Lind &lt;jorgen.lind@digia.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The error signal patch added some usages of QOpenGLFunctions::isES().
These need to be temporarily removed.

Change-Id: Ibd1d8094059020708aefe4b3502ba56d624928b3
Reviewed-by: Friedemann Kleint &lt;Friedemann.Kleint@digia.com&gt;
Reviewed-by: Jørgen Lind &lt;jorgen.lind@digia.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Introduced a few more signals to QQuickWindow.</title>
<updated>2014-02-25T16:08:02+00:00</updated>
<author>
<name>Gunnar Sletta</name>
<email>gunnar.sletta@jollamobile.com</email>
</author>
<published>2014-02-10T14:51:16+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=aaea23708a46259094a8203f73ee0650c362d85f'/>
<id>aaea23708a46259094a8203f73ee0650c362d85f</id>
<content type='text'>
Also marked the new afterAnimation() signal as \since 5.3 and
introduced proper revisioning on the new signals.

[Changelog][QtQuick] Added QQuickWindow::afterSynchronizing(),
openglContextCreated(), sceneGraphAboutToStop(). Useful for
deeper integration with the rendering.

Change-Id: I5532b310506c2432325595e55ef9307b8934abee
Reviewed-by: Laszlo Agocs &lt;laszlo.agocs@digia.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Also marked the new afterAnimation() signal as \since 5.3 and
introduced proper revisioning on the new signals.

[Changelog][QtQuick] Added QQuickWindow::afterSynchronizing(),
openglContextCreated(), sceneGraphAboutToStop(). Useful for
deeper integration with the rendering.

Change-Id: I5532b310506c2432325595e55ef9307b8934abee
Reviewed-by: Laszlo Agocs &lt;laszlo.agocs@digia.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix wrong assert in QSGRenderLoop::setInstance</title>
<updated>2014-02-25T12:56:41+00:00</updated>
<author>
<name>Marco Bubke</name>
<email>marco.bubke@digia.com</email>
</author>
<published>2014-02-19T13:54:24+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=b9f74e7467f31b63bd0ff2ae9d66bcd61a8b8b6f'/>
<id>b9f74e7467f31b63bd0ff2ae9d66bcd61a8b8b6f</id>
<content type='text'>
The assert before test not if the scoped pointer is null but the pointer
which was holding the scoping pointer.

Task-number: QTBUG-36932
Change-Id: I7a5e51752446556c1796bb677fe69cbceffdd3e0
Reviewed-by: Gunnar Sletta &lt;gunnar.sletta@jollamobile.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The assert before test not if the scoped pointer is null but the pointer
which was holding the scoping pointer.

Task-number: QTBUG-36932
Change-Id: I7a5e51752446556c1796bb677fe69cbceffdd3e0
Reviewed-by: Gunnar Sletta &lt;gunnar.sletta@jollamobile.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
