summaryrefslogtreecommitdiffstats
path: root/libs/hwui/LayerRenderer.cpp
diff options
context:
space:
mode:
authorRomain Guy <romainguy@google.com>2011-01-19 13:40:43 -0800
committerAndroid (Google) Code Review <android-gerrit@google.com>2011-01-19 13:40:43 -0800
commit9335f5b2fde244614184f45d29cc574d1ba8cbba (patch)
treeec0a045758875ad9f6eb847c8b872a111ffb6e0c /libs/hwui/LayerRenderer.cpp
parentaa2275e31d1ab6d672013e82a7b8da2559b0e085 (diff)
parent42f3a4b7c35dd1ea1922356eb3611af8cde05179 (diff)
downloadframeworks_base-9335f5b2fde244614184f45d29cc574d1ba8cbba.zip
frameworks_base-9335f5b2fde244614184f45d29cc574d1ba8cbba.tar.gz
frameworks_base-9335f5b2fde244614184f45d29cc574d1ba8cbba.tar.bz2
Merge "Make embedded hardware layers work. Bug #3369474" into honeycomb
Diffstat (limited to 'libs/hwui/LayerRenderer.cpp')
-rw-r--r--libs/hwui/LayerRenderer.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/libs/hwui/LayerRenderer.cpp b/libs/hwui/LayerRenderer.cpp
index e6bea78..a167429 100644
--- a/libs/hwui/LayerRenderer.cpp
+++ b/libs/hwui/LayerRenderer.cpp
@@ -29,7 +29,6 @@ namespace uirenderer {
void LayerRenderer::prepare(bool opaque) {
LAYER_RENDERER_LOGD("Rendering into layer, fbo = %d", mLayer->fbo);
- glGetIntegerv(GL_FRAMEBUFFER_BINDING, (GLint*) &mPreviousFbo);
glBindFramebuffer(GL_FRAMEBUFFER, mLayer->fbo);
OpenGLRenderer::prepare(opaque);
@@ -37,11 +36,17 @@ void LayerRenderer::prepare(bool opaque) {
void LayerRenderer::finish() {
OpenGLRenderer::finish();
- glBindFramebuffer(GL_FRAMEBUFFER, mPreviousFbo);
generateMesh();
LAYER_RENDERER_LOGD("Finished rendering into layer, fbo = %d", mLayer->mFbo);
+
+ // No need to unbind our FBO, this will be taken care of by the caller
+ // who will invoke OpenGLRenderer::resume()
+}
+
+GLint LayerRenderer::getTargetFbo() {
+ return mLayer->fbo;
}
///////////////////////////////////////////////////////////////////////////////