Files
frameworks_base/services/accessibility/java
Daniel Hsieh bf250af771 Makes GesturesObserver#clear as a private method.
In the previous version, GesturesObserver#clear would be called by
MagnificationGesturesObserver, making the matchers' state be clear by
outside class. It would make the matchers' state not consistency in
GesturesObserver#onMotionEvent. Especially, when the matcher is
completed and becomes STATE_GESTURE_COMPLETED, it would be clear as
STATE_CLEAR by MagnificationGesturesObserver#clear which would trigger
GesturesObserver#clear. It would make the GesturesObserver keep going to
check other matchers since matcher.getState() !=
GestureMatcher.STATE_GESTURE_COMPLETED and wouldn't early return.

Therefore, we make GesturesObserver#clear as a private method and make
it to manager its matchers' state.

Bug: 206061247
Test: atest GesturesObserverTest
      atest MagnificationGesturesObserverTest
      atest MagnificationGestureHandlerTest
      atest WindowMagnificationGestureHandlerTest
Change-Id: I19294e231f969d7dd54b50dc9a2deb36d06b532a
2022-03-18 15:59:52 +00:00
..