summaryrefslogtreecommitdiffstats
path: root/examples/wayland/minimal-cpp/window.cpp
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2017-10-04 10:42:45 +0200
committerLiang Qi <liang.qi@qt.io>2017-10-04 10:42:45 +0200
commit04f6ff77ef0c8858629766e191ecc3d4ef056848 (patch)
treed3684e21bf277bdd2b0d284042d627d97ad528db /examples/wayland/minimal-cpp/window.cpp
parenta81fc596a3cbcc07396be1c0284f1ee8aa44ff8c (diff)
parent00a99e631459eb7e52fde822c24d7b9d603008c4 (diff)
Merge remote-tracking branch 'origin/5.9' into 5.10v5.10.0-beta1
Diffstat (limited to 'examples/wayland/minimal-cpp/window.cpp')
-rw-r--r--examples/wayland/minimal-cpp/window.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/examples/wayland/minimal-cpp/window.cpp b/examples/wayland/minimal-cpp/window.cpp
index f0d0fd5d9..a23bba3ae 100644
--- a/examples/wayland/minimal-cpp/window.cpp
+++ b/examples/wayland/minimal-cpp/window.cpp
@@ -86,7 +86,8 @@ void Window::paintGL()
functions->glClearColor(.4f, .7f, .1f, 0.5f);
functions->glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
- m_textureBlitter.bind();
+ GLenum currentTarget = GL_TEXTURE_2D;
+ m_textureBlitter.bind(currentTarget);
functions->glEnable(GL_BLEND);
functions->glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
@@ -96,6 +97,10 @@ void Window::paintGL()
auto texture = view->getTexture();
if (!texture)
continue;
+ if (texture->target() != currentTarget) {
+ currentTarget = texture->target();
+ m_textureBlitter.bind(currentTarget);
+ }
GLuint textureId = texture->textureId();
QWaylandSurface *surface = view->surface();
if (surface && surface->hasContent()) {