surfaceflinger: Add support for extension lib
* Supports changed z fod order
* Supports changed fod usage bits
TheScarastic: Adapt to extension lib
Co-authored-by: TheScarastic <warabhishek@gmail.com>
Change-Id: Id95aa73e06b4223a6b4f05c69fa2fc494f9a97b1
diff --git a/services/surfaceflinger/BufferQueueLayer.cpp b/services/surfaceflinger/BufferQueueLayer.cpp
index f35a4fd..062f927 100644
--- a/services/surfaceflinger/BufferQueueLayer.cpp
+++ b/services/surfaceflinger/BufferQueueLayer.cpp
@@ -18,6 +18,7 @@
#define LOG_TAG "BufferQueueLayer"
#define ATRACE_TAG ATRACE_TAG_GRAPHICS
#include <compositionengine/Display.h>
+#include <compositionengine/FodExtension.h>
#include <compositionengine/Layer.h>
#include <compositionengine/OutputLayer.h>
#include <compositionengine/impl/LayerCompositionState.h>
@@ -560,11 +561,19 @@
return BAD_VALUE;
}
+ uint32_t usageBits = 0;
+
+ if (mName == FOD_LAYER_NAME) {
+ usageBits = getFodUsageBits(usageBits, false);
+ } else if (mName == FOD_TOUCHED_LAYER_NAME) {
+ usageBits = getFodUsageBits(usageBits, true);
+ }
+
mFormat = format;
setDefaultBufferSize(w, h);
mConsumer->setDefaultBufferFormat(format);
- mConsumer->setConsumerUsageBits(getEffectiveUsage(0));
+ mConsumer->setConsumerUsageBits(getEffectiveUsage(usageBits));
return NO_ERROR;
}