https://youtu.be/RA-vLF_vnng?t=141
webview가 listview 안에 있는 경우 스크롤이 안된다.
webview의 제스쳐 캡쳐 우선순위가 아주 낮기 때문에 이런 일이 발생한다.
제스쳐 우선순위에 대한 자세한 설명은
https://docs.flutter.dev/development/ui/advanced/gestures#gesture-disambiguation
webview의 gestureRecognizers 라는 속성을 이용하면 웹 뷰에서 우선권을 주장할 수 있다.
...(웹뷰 내부)
gestureRecognizers: Set()
..add(
Factory<VerticalDragGestureRecognizer>(
() => VerticalDragGestureRecognizer(),
),
)
이것은 리스트 뷰의 스크롤 방향이 수직이기 때문에 추가한 것이고,
만약 리스트뷰의 방향이 수평이거나, 수평 스크롤을 하는 PageView 같은 위젯의 경우에는
수평 스크롤의 우선권만 가져가기 때문에
수직 스크롤을 하기 위해 웹 뷰에서 따로 우선권을 가져올 필요는 없다.