From 7e37c47aff144de9a3d2b610f2ade64910db91d5 Mon Sep 17 00:00:00 2001 From: Cosmin Tanislav Date: Thu, 10 Feb 2022 22:04:32 +0200 Subject: [PATCH] dubai: Add UDFPS extension library * Mark the pressed fingerprint layer. Change-Id: I49891f89350839ff93ff1a762a83996bfd56ec18 --- BoardConfig.mk | 3 +++ fingerprint/Android.bp | 11 +++++++++++ fingerprint/UdfpsExtension.cpp | 19 +++++++++++++++++++ 3 files changed, 33 insertions(+) create mode 100644 fingerprint/UdfpsExtension.cpp diff --git a/BoardConfig.mk b/BoardConfig.mk index e7a37e2..3ae1078 100644 --- a/BoardConfig.mk +++ b/BoardConfig.mk @@ -25,6 +25,9 @@ TARGET_BOOTLOADER_BOARD_NAME := dubai # Bluetooth BOARD_BLUETOOTH_BDROID_BUILDCFG_INCLUDE_DIR := $(DEVICE_PATH)/bluetooth +# Fingerprint +TARGET_SURFACEFLINGER_UDFPS_LIB := //$(DEVICE_PATH):libudfps_extension.dubai + # HIDL DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE += $(DEVICE_PATH)/device_framework_matrix_dubai.xml DEVICE_MANIFEST_YUPIK_FILES += $(DEVICE_PATH)/manifest_dubai.xml diff --git a/fingerprint/Android.bp b/fingerprint/Android.bp index bb68900..f98b105 100644 --- a/fingerprint/Android.bp +++ b/fingerprint/Android.bp @@ -19,3 +19,14 @@ cc_binary { "android.hardware.biometrics.fingerprint@2.3", ], } + +cc_library_static { + name: "libudfps_extension.dubai", + srcs: ["UdfpsExtension.cpp"], + include_dirs: [ + "frameworks/native/services/surfaceflinger/CompositionEngine/include" + ], + header_libs: [ + "generated_kernel_headers", + ], +} diff --git a/fingerprint/UdfpsExtension.cpp b/fingerprint/UdfpsExtension.cpp new file mode 100644 index 0000000..f51a9e3 --- /dev/null +++ b/fingerprint/UdfpsExtension.cpp @@ -0,0 +1,19 @@ +/* + * Copyright (C) 2022 The LineageOS Project + * + * SPDX-License-Identifier: Apache-2.0 + */ + +#include +#include + +uint32_t getUdfpsZOrder(uint32_t z, bool touched) { + if (touched) { + z |= FOD_PRESSED_LAYER_ZORDER; + } + return z; +} + +uint64_t getUdfpsUsageBits(uint64_t usageBits, bool) { + return usageBits; +}