Use shader traits for magnifer effect

adapted from the zoom effect patch which
was broken likewise in KWin/5

REVIEW: 124942
icc-effect-5.14.5
Thomas Lübking 2015-08-27 22:16:49 +02:00
parent e148fc5bc9
commit 0f4c51936e
1 changed files with 7 additions and 0 deletions

View File

@ -153,7 +153,14 @@ void MagnifierEffect::paintScreen(int mask, QRegion region, ScreenPaintData& dat
m_fbo->blitFromFramebuffer(srcArea);
// paint magnifier
m_texture->bind();
auto s = ShaderManager::instance()->pushShader(ShaderTrait::MapTexture);
QMatrix4x4 mvp;
const QSize size = effects->virtualScreenSize();
mvp.ortho(0, size.width(), size.height(), 0, 0, 65535);
mvp.translate(area.x(), area.y());
s->setUniform(GLShader::ModelViewProjectionMatrix, mvp);
m_texture->render(infiniteRegion(), area);
ShaderManager::instance()->popShader();
m_texture->unbind();
QVector<float> verts;
GLVertexBuffer *vbo = GLVertexBuffer::streamingBuffer();