summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiikka Heikkinen <miikka.heikkinen@qt.io>2019-08-21 17:04:22 +0300
committerMiikka Heikkinen <miikka.heikkinen@qt.io>2019-08-23 10:46:01 +0300
commit6962822a4b2f2d7ac203337b904ace3430bae9f8 (patch)
tree0354c2f74b2e68dbdd25db0524aeac84fe6a7bdc
parentc66b4928e382121e62a2b9a94d7df57f2d15f65f (diff)
Fix black screen when refreshing import of a mesh
Ensure correct context when reacting to changing project files. Relevant to at least invalidating buffer when .mesh file changes. Change-Id: I71717c477b0b637a0f43da2f46468dcd2b3795ae Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> Reviewed-by: Janne Kangas <janne.kangas@qt.io>
-rw-r--r--src/Authoring/Client/Code/Core/Doc/DocumentEditor.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/Authoring/Client/Code/Core/Doc/DocumentEditor.cpp b/src/Authoring/Client/Code/Core/Doc/DocumentEditor.cpp
index 4705a8eb..7051a91d 100644
--- a/src/Authoring/Client/Code/Core/Doc/DocumentEditor.cpp
+++ b/src/Authoring/Client/Code/Core/Doc/DocumentEditor.cpp
@@ -93,6 +93,7 @@
#include "StudioApp.h"
#include "StudioUtils.h"
#include "Qt3DSDMHandles.h"
+#include "IStudioRenderer.h"
namespace {
@@ -5236,6 +5237,7 @@ public:
QSet<QString> imageLoadSet;
+ g_StudioApp.getRenderer().MakeContextCurrent();
for (size_t fileIdx = 0, fileEnd = inList.size(); fileIdx < fileEnd; ++fileIdx) {
const SFileModificationRecord &theRecord(inList[fileIdx]);
@@ -5402,6 +5404,8 @@ public:
if (!imageLoadSet.isEmpty())
m_Doc.GetBufferCache().reloadImageSet(imageLoadSet);
+ g_StudioApp.getRenderer().ReleaseContext();
+
if (hasProgressFired)
theDispatch.FireOnProgressEnd();
if (requestRender && m_Doc.GetSceneGraph())