Introduce InputConfig::SENSITIVE_FOR_TRACING
We don't want to rely on WM flags in input, and we also want to be able
to mark a window as secure in the input framework without affecting
other aspects of the system.
Introduce a new InputConfig flag for sensitive windows. It must always be
set when the window flag FLAG_SECURE is set.
Bug: 210460522
Test: manual
Change-Id: I5adb7467ab76bdcf89803e1ba08b52273a09e7bb
diff --git a/services/inputflinger/dispatcher/InputDispatcher.cpp b/services/inputflinger/dispatcher/InputDispatcher.cpp
index e331e8d..25632fe 100644
--- a/services/inputflinger/dispatcher/InputDispatcher.cpp
+++ b/services/inputflinger/dispatcher/InputDispatcher.cpp
@@ -838,6 +838,13 @@
if (!inserted) {
return Error() << "Duplicate entry for " << info;
}
+ if (info.layoutParamsFlags.test(WindowInfo::Flag::SECURE) &&
+ !info.inputConfig.test(WindowInfo::InputConfig::NOT_VISIBLE) &&
+ !info.inputConfig.test(WindowInfo::InputConfig::SENSITIVE_FOR_TRACING)) {
+ return Error()
+ << "Window with FLAG_SECURE does not set InputConfig::SENSITIVE_FOR_TRACING: "
+ << info;
+ }
}
return {};
}