TouchInputMapper: Block touches outside logical display

Ensure that touches outside the logical display are blocked when
per-window-input-rotation is enabled. Since input will work in display
coordinates, all touches originating outside the physical display bounds
should be blocked.

This also adds tests to verify that touch downs outside the physical
display bounds are blocked by InputReader. With this change, the
SurfaceRange tests that ensure InputReader outputs coordinates in
logical display space are no longer valid, and are removed.

Test: manual, using foldable device.
Test: atest inputflinger_tests
Bug: 179274888
Bug: 198407054
Change-Id: I5886d9e2990e59e3e810cddae79e4c90c41314c8
diff --git a/services/inputflinger/reader/mapper/TouchInputMapper.h b/services/inputflinger/reader/mapper/TouchInputMapper.h
index a56468f..3340672 100644
--- a/services/inputflinger/reader/mapper/TouchInputMapper.h
+++ b/services/inputflinger/reader/mapper/TouchInputMapper.h
@@ -435,6 +435,7 @@
 
     // The surface origin specifies how the surface coordinates should be translated
     // to align with the logical display coordinate space.
+    // TODO(b/188939842): Remove surface coordinates when Per-Window Input Rotation is enabled.
     int32_t mSurfaceLeft;
     int32_t mSurfaceTop;
     int32_t mSurfaceRight;