Split window texture provider from window texture node
Currently, the WindowThumbnail item puts both the texture provider and the scene graph node in a single object. It uses QPointer to detect if the scene graph node has been deleted. However, that seems to break if QtQuick passes null oldNode while the real old node is still alive. Because the WindowThumbnail caches the old node, it may not see that QtQuick wants a new scene graph node. With debug build, it's going to trigger an assert in QQuickWindowPrivate::updateDirtyNode() that checks if the paint node is either new or belongs to the child container node. With a release build, it's undefined behavior. In order to make the WindowThumbnail item handle the case where oldNode is null while the cached old node is still alive, this change decouples texture provider bits from the scene graph node and ports the item to QSGImageNode, which we need to do anyway. BUG: 439681
parent
90533b5b
Loading
Loading
Pipeline
#88654
passed
with stage
in
1 minute and 16 seconds
Loading
Please register or sign in to comment