h/q/d: Consider dropped layers while calculating FB z-order
While batching in partial mdp composition, calculate FB batch
z-order after dropping the z-order of dropped layers lying below.
Change-Id: I92752f67e797a834aae6a575af2f8fa42c9c0911
CRs-Fixed: 601614
diff --git a/libhwcomposer/hwc_mdpcomp.cpp b/libhwcomposer/hwc_mdpcomp.cpp
index 9221b71..f7a3afd 100644
--- a/libhwcomposer/hwc_mdpcomp.cpp
+++ b/libhwcomposer/hwc_mdpcomp.cpp
@@ -962,11 +962,13 @@
int& maxBatchCount) {
int i = 0;
int fbZOrder =-1;
+ int droppedLayerCt = 0;
while (i < mCurrentFrame.layerCount) {
int batchCount = 0;
int batchStart = i;
int batchEnd = i;
- int fbZ = batchStart;
+ /* Adjust batch Z order with the dropped layers so far */
+ int fbZ = batchStart - droppedLayerCt;
int firstZReverseIndex = -1;
int updatingLayersAbove = 0;//Updating layer count in middle of batch
while(i < mCurrentFrame.layerCount) {
@@ -981,6 +983,7 @@
} else {
if(mCurrentFrame.drop[i]) {
i++;
+ droppedLayerCt++;
continue;
} else if(updatingLayersAbove <= 0) {
batchCount++;