Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5536841e authored by Romain Guy's avatar Romain Guy
Browse files

OpenGLRenderer would not render colors < ALPHA_THRESHOLD

Bug #3282805

This bug was introduced with a previous refactoring. This also fixes
issues with setting the alpha when drawing bitmaps.

Change-Id: Id47641d26a4536c7e540041f92243bf6db9fc96d
parent 70ca14e0
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
@@ -925,11 +925,17 @@ void OpenGLRenderer::setupDrawModelView(float left, float top, float right, floa
}

void OpenGLRenderer::setupDrawColorUniforms() {
    if (mColorSet && mSetShaderColor) {
    if (mColorSet || (mShader && mSetShaderColor)) {
        mCaches.currentProgram->setColor(mColorR, mColorG, mColorB, mColorA);
    }
}

void OpenGLRenderer::setupDrawColorAlphaUniforms() {
    if (mSetShaderColor) {
        mCaches.currentProgram->setColor(mColorA, mColorA, mColorA, mColorA);
    }
}

void OpenGLRenderer::setupDrawShaderUniforms(bool ignoreTransform) {
    if (mShader) {
        if (ignoreTransform) {
@@ -1721,7 +1727,7 @@ void OpenGLRenderer::drawTextureMesh(float left, float top, float right, float b
    } else {
        setupDrawModelViewTranslate(left, top, right, bottom, ignoreTransform);
    }
    setupDrawColorUniforms();
    setupDrawColorAlphaUniforms();
    setupDrawColorFilterUniforms();
    setupDrawTexture(texture);
    setupDrawMesh(vertices, texCoords, vbo);
+1 −0
Original line number Diff line number Diff line
@@ -443,6 +443,7 @@ private:
    void setupDrawModelViewTranslate(float left, float top, float right, float bottom,
            bool ignoreTransform = false);
    void setupDrawColorUniforms();
    void setupDrawColorAlphaUniforms();
    void setupDrawShaderUniforms(bool ignoreTransform = false);
    void setupDrawColorFilterUniforms();
    void setupDrawSimpleMesh();