From b82da65cb1601be504241f36778395cd6cb9f87b Mon Sep 17 00:00:00 2001 From: Romain Guy Date: Fri, 30 Jul 2010 11:36:12 -0700 Subject: Fix improper clipping after a save() Change-Id: I13426a67f20d77e2710bd500d82884098f4be97c --- libs/hwui/OpenGLRenderer.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'libs/hwui/OpenGLRenderer.cpp') diff --git a/libs/hwui/OpenGLRenderer.cpp b/libs/hwui/OpenGLRenderer.cpp index 3c36f954947f..cc8e6bc60b23 100644 --- a/libs/hwui/OpenGLRenderer.cpp +++ b/libs/hwui/OpenGLRenderer.cpp @@ -177,7 +177,7 @@ void OpenGLRenderer::setViewport(int width, int height) { } void OpenGLRenderer::prepare() { - mSnapshot = mFirstSnapshot; + mSnapshot = new Snapshot(mFirstSnapshot); mSaveCount = 0; glDisable(GL_SCISSOR_TEST); @@ -188,7 +188,7 @@ void OpenGLRenderer::prepare() { glEnable(GL_SCISSOR_TEST); glScissor(0, 0, mWidth, mHeight); - mSnapshot->clipRect.set(0.0f, 0.0f, mWidth, mHeight); + mSnapshot->setClip(0.0f, 0.0f, mWidth, mHeight); } /////////////////////////////////////////////////////////////////////////////// @@ -569,6 +569,7 @@ void OpenGLRenderer::drawText(const char* text, int bytesCount, int count, chooseBlending(true, mode); bindTexture(mFontRenderer.getTexture(), GL_CLAMP_TO_EDGE, GL_CLAMP_TO_EDGE, 0); + glUniform1i(mCurrentProgram->getUniform("sampler"), 0); int texCoordsSlot = mCurrentProgram->getAttrib("texCoords"); glEnableVertexAttribArray(texCoordsSlot); -- cgit v1.2.3-59-g8ed1b