InputReader: prevent merging pointer sub-devices
If input devices have the same identifier, they are usually merged, on
the assumption that they are separate sub-devices that likely got split
out by the kernel.
This stops the merging of multiple pointer-like input devices, as
InputReader is not designed to cope with these properly. This situation
is commonly seen with integrated touchscreen/stylus ICs that report
touchscreen and stylus input events via distinct HID collections/reports
on a single HID device.
Bug: 389689566
Test: Target booted, confirmed unmerged devices in InputReaderState via dumpsys inputflinger
Test: atest inputflinger_tests # on target, with flag enabled & disabled
Test: TEST=inputflinger_tests; m $TEST && $ANDROID_HOST_OUT/nativetest64/$TEST/$TEST
Flag: com.android.input.flags.prevent_merging_input_pointer_devices
Change-Id: Iac36f29ed5aa1bf915bf9ad665b237378e967a4f
6 files changed