[flexiglass] Add logic to dispatch touches from NSSL to Flexiglass

When NSSL determines a touch will drag the scroller, the MotionEvent is dispatched directly to the root Composable of Flexiglass.
Also positions NSSL and its scrim correctly under the rest of the content in the shade, and fades them in during shade expansion.

Note: touch does not get correctly intercepted by NSSL when touching a notification that has just been received. This case will be covered in the follow-up nested scrolling CL, as the fix depends on the scroll state of the scrim.

Bug: 296118689
Test: added unit tests
Flag: ACONFIG com.android.systemui.scene_container DEVELOPMENT
Change-Id: I5b405d5edbe31c47feca08f40a91e7e858af04de
19 files changed