From bcab7b17b1c5476935a6f2f916922b4eb57991a4 Mon Sep 17 00:00:00 2001 From: Mathias Agopian Date: Fri, 23 Aug 2013 16:12:34 -0700 Subject: [PATCH] fix DimLayer in GLES2.0 SF DimLayer state wasn't initialized properly. Bug: 10442967 Change-Id: I384c1d85c58c96ae29d5daa1fabee9f4ce003501 --- .../surfaceflinger/RenderEngine/GLES20RenderEngine.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/services/surfaceflinger/RenderEngine/GLES20RenderEngine.cpp b/services/surfaceflinger/RenderEngine/GLES20RenderEngine.cpp index dcad390ad..cde1e3a67 100644 --- a/services/surfaceflinger/RenderEngine/GLES20RenderEngine.cpp +++ b/services/surfaceflinger/RenderEngine/GLES20RenderEngine.cpp @@ -116,7 +116,11 @@ void GLES20RenderEngine::setupLayerBlending( } void GLES20RenderEngine::setupDimLayerBlending(int alpha) { - mState.setPlaneAlpha(alpha / 255.0f); + mState.setPlaneAlpha(1.0f); + mState.setPremultipliedAlpha(true); + mState.setOpaque(false); + mState.setColor(0, 0, 0, alpha/255.0f); + mState.disableTexture(); if (alpha == 0xFF) { glDisable(GL_BLEND); @@ -124,7 +128,6 @@ void GLES20RenderEngine::setupDimLayerBlending(int alpha) { glEnable(GL_BLEND); glBlendFunc(GL_ONE, GL_ONE_MINUS_SRC_ALPHA); } - disableTexturing(); } void GLES20RenderEngine::setupLayerTexturing(const Texture& texture) {