When I use this code to replace the usual B4A touch event handler ...
B4X:
Dim rf As Reflector
rf.Target = pnlOne
rf.SetOnTouchListener("pnlOne_Touch")
. . .
. . .
Sub pnlOne_Touch (viewtag As Object, action As Int, X As Float, Y As Float, motionevent As Object) As Boolean
... the motionevent value returned to pnlOne_Touch reports only DOWN events. This does not seem right. How can I get the other touch events?
I think the situation may be analogous to where Windows controls can 'capture' the mouse to receive motion events even when the user moves the cursor outside the bounds of the control. I think a similar thing is happening here for a similar reason. As this is a characteristic of, and controlled by, low level code in the OS then I don't think there is anything you can except perhaps call the event Subs of the underlying views in your panel event Sub.
Okay - thanks. I did think of trying that, but I raised this thread as a result of failing to answer fully someone else's problem in another thread. There the underlying view was a CLV and the requirement was to pass through scroll gestures, and I am not sure how to deal with those. But, for my education, I will experiment with some other types of view.