Merge "Fix Contacts animation jank" into jb-mr2-dev

This commit is contained in:
Chet Haase
2013-04-10 17:48:53 +00:00
committed by Android (Google) Code Review
2 changed files with 6 additions and 5 deletions

View File

@@ -1368,7 +1368,7 @@ public abstract class HardwareRenderer {
callbacks.onHardwarePreDraw(canvas);
if (displayList != null) {
status = drawDisplayList(attachInfo, canvas, displayList, status);
status |= drawDisplayList(attachInfo, canvas, displayList, status);
} else {
// Shouldn't reach here
view.draw(canvas);

View File

@@ -1905,14 +1905,15 @@ void OpenGLRenderer::finishDrawTexture() {
status_t OpenGLRenderer::drawDisplayList(DisplayList* displayList, Rect& dirty,
int32_t replayFlags) {
status_t status;
// All the usual checks and setup operations (quickReject, setupDraw, etc.)
// will be performed by the display list itself
if (displayList && displayList->isRenderable()) {
if (CC_UNLIKELY(mCaches.drawDeferDisabled)) {
startFrame();
status = startFrame();
ReplayStateStruct replayStruct(*this, dirty, replayFlags);
displayList->replay(replayStruct, 0);
return replayStruct.mDrawGlStatus;
return status | replayStruct.mDrawGlStatus;
}
DeferredDisplayList deferredList;
@@ -1920,9 +1921,9 @@ status_t OpenGLRenderer::drawDisplayList(DisplayList* displayList, Rect& dirty,
displayList->defer(deferStruct, 0);
flushLayers();
startFrame();
status = startFrame();
return deferredList.flush(*this, dirty);
return status | deferredList.flush(*this, dirty);
}
return DrawGlInfo::kStatusDone;