Add InputEvent Compatibility Processor

Depending on the SDK version of applications, there may need to be
changes made to InputEvents for compatibility purposes. Here, we add a
InputEventCompatProcessor to refactor all compatibility adjustments to
InputEvents.

The compatibility processor is instantiated in ViewRootImpl using
reflection, where the class name of the processor is defined in
config.xml as `config_inputEventCompatProcessorClassName`. This allows
for overlays to change the compatibility processor that is used for the
build.

The processor has two methods for processing the InputEvent before and
after it is sent into the InputStages of the input pipeline in
ViewRootImpl. InputEvents that are changed by the processor are marked
with `FLAG_MODIFIED_FOR_COMPATIBILITY` so that they are sent back to the
processor before they are finished.

Bug: 119264233
Test: manual
Change-Id: Ie0dc4665cb677a7ab2cc627791a0f72cdfce1cde
4 files changed