swipe-dismiss: add IDecorViewGestureListener

- To allow implicit gesture interception at client side and provide
  compatibility behavior to Wear OS apps depending on legacy swipe
  dismiss behavior.

WMS:
- Add `register/unreigsterDecorViewGestureListener(IDecorViewGestureListener, displayId)`.
- Protect by MONITOR_INPUT permission

IWindowSession / Session:
- Add `reportDecorViewGestureInterceptionChanged(IWindow, boolean intercepted)`.

ViewRootImpl:
- Add MSG_DECOR_VIEW_GESTURE_INTERCEPTION, asynchronously report gesture
  interception result to window session.

DecorView:
- Add WearGestureInterceptionDetector for WearOS system gesture
  interception logic.
- Reports gesture interception through ViewRootImpl

More context: go/wear-gestural-navigation-2023

Test: manual, http://shortn/_tEmDzQ2LOS
Bug: 297923810
Change-Id: I279963433e5e44940f884883be6807f182577bd1
10 files changed