aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/scenegraph/coreapi
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2017-09-05 09:01:22 +0200
committerLiang Qi <liang.qi@qt.io>2017-09-05 09:31:34 +0200
commit2795ac5d5930fa28ea329529c0dd2e515b361531 (patch)
tree8dd01197f5b71e1eb8e3612b0119764623325803 /src/quick/scenegraph/coreapi
parent8f93d3627a9b76bf77896501129990e33a77f32c (diff)
parent6ff0e9a65657e8c51a37e63efe8169bb7e3050cc (diff)
Merge remote-tracking branch 'origin/5.9' into 5.10
Conflicts: src/quick/items/qquickwindow.cpp src/quick/scenegraph/qsgrenderloop.cpp Change-Id: Idd7106995b5545fcac869e9056a365ef9edb36ca
Diffstat (limited to 'src/quick/scenegraph/coreapi')
-rw-r--r--src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp5
-rw-r--r--src/quick/scenegraph/coreapi/qsgbatchrenderer_p.h1
-rw-r--r--src/quick/scenegraph/coreapi/qsgrenderer_p.h3
3 files changed, 8 insertions, 1 deletions
diff --git a/src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp b/src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp
index edee29584c..d016e79641 100644
--- a/src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp
+++ b/src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp
@@ -2914,6 +2914,11 @@ void Renderer::renderRenderNode(Batch *batch)
glBindFramebuffer(GL_FRAMEBUFFER, prevFbo);
}
+void Renderer::releaseCachedResources()
+{
+ m_shaderManager->invalidated();
+}
+
class VisualizeShader : public QOpenGLShaderProgram
{
public:
diff --git a/src/quick/scenegraph/coreapi/qsgbatchrenderer_p.h b/src/quick/scenegraph/coreapi/qsgbatchrenderer_p.h
index 2c0f8667e8..b0a14d23b9 100644
--- a/src/quick/scenegraph/coreapi/qsgbatchrenderer_p.h
+++ b/src/quick/scenegraph/coreapi/qsgbatchrenderer_p.h
@@ -629,6 +629,7 @@ public:
protected:
void nodeChanged(QSGNode *node, QSGNode::DirtyState state) Q_DECL_OVERRIDE;
void render() Q_DECL_OVERRIDE;
+ void releaseCachedResources() Q_DECL_OVERRIDE;
private:
enum ClipTypeBit
diff --git a/src/quick/scenegraph/coreapi/qsgrenderer_p.h b/src/quick/scenegraph/coreapi/qsgrenderer_p.h
index 1ea2775e6f..1cb4c56316 100644
--- a/src/quick/scenegraph/coreapi/qsgrenderer_p.h
+++ b/src/quick/scenegraph/coreapi/qsgrenderer_p.h
@@ -92,7 +92,8 @@ public:
QSGNodeUpdater *nodeUpdater() const;
void setNodeUpdater(QSGNodeUpdater *updater);
inline QSGMaterialShader::RenderState state(QSGMaterialShader::RenderState::DirtyStates dirty) const;
- virtual void setCustomRenderMode(const QByteArray &) { };
+ virtual void setCustomRenderMode(const QByteArray &) { }
+ virtual void releaseCachedResources() { }
void clearChangedFlag() { m_changed_emitted = false; }