Horizontal scrolling DP blocks vertical scrolling

I’ve been testing a mobile prototype. On one part of the page there is a horizontally scrolling section. The problem is that this blocks vertical scrolling. The user has to make sure they’re finger is outside the DP to be able to scroll past it.

Does anyone know a way round this?


See if this works for you. It does for me on iPhoneX, iOS 14.2


V-scroll page with H-scroll DP.rp (102.4 KB)

It seems like if you have a DRAGGED event assigned to the horizontally scrolling dynamic panel, it will override the “drag to scroll” in the y-dimension but not x-dimension. So, on Page 3 of above file (topmost page to make it easier to test on phone) all I did was create a “DRAGGED Show This” on the dynamic panel (which doesn’t really have an effect on the dp because it is already shown) and i can touch on it to scroll the page up/down.

I started off creating a dynamic panel that scrolls horizontally, and enough content to scroll the whole page vertically–this is Page 1 in my file above, and demonstrates this problem.

Then, I duplicated it to Page 2 and added a dynamic panel as a mask in front of the scrolling dynamic panel. This was to “block the scroll-blocking.” If user touches on the mask and drags vertically to scroll the page it should allow it. But if they drag horizontally the mask will hide itself, allowing the dynamic panel behind it to scroll horizontally–at least on the next touch event. Then, when the window itself is scrolled vertically, it will show the mask again. This all worked pretty well on a desktop with a mouse, but on a touchscreen it failed–it basically acted the opposite. When the mask is shown and you drag up/down on it nothing happens, but when mask is hidden and you drag up/down on the dynamic panel to scroll vertically, the page DOES scroll up and down!

I was totally confused and kind of mad. …until I realized that is actually what I want! All I had to do was delete the mask and it worked. Crazy.

I added some temporary text widgets on Page 2 to track the scrolling and dragging of the dynamic panel as well as the window, and pinned these. On a touchscreen device you can see that both drag and scroll get fired when “dragging to scroll” the dynamic panel. But, on a pointer-only device (standard desktop with a mouse, trackpad, etc.) the scroll only gets triggered by a scroll gesture (scrollwheel or two-finger track for example) and a click-hold-move-to-drag behavior is separate.

I feel like I’ve discovered a bug that is actually a nice hidden feature :sunglasses: