Verify that the block scrolling on overflow has touch event region with synchronous dispatch associated with it.


(Frame scrolling node
  (scrollable area size 800 600)
  (contents size 800 600)
  (scrollable area parameters 
    (horizontal scroll elasticity 1)
    (vertical scroll elasticity 1)
    (horizontal scrollbar mode 0)
    (vertical scrollbar mode 0))
  (visual viewport enabled 1)
  (layout viewport at (0,0) size 800x600)
  (min layout viewport origin (0,0))
  (max layout viewport origin (0,0))
  (synchronous event dispatch region for event touchend
    at (0,0) size 800x200)
  (synchronous event dispatch region for event touchstart
    at (0,0) size 800x200)
  (synchronous event dispatch region for event touchforcechange
    at (0,0) size 800x200)
  (synchronous event dispatch region for event touchmove
    at (0,0) size 800x200)
  (behavior for fixed 0)
)

