I think you're seeing this bug, which was fixed in 9.0.5:
<https://quality.livecode.com/show_bug.cgi?id=12419>

Without a mouseUp message, it is impossible to detect a swipe within a scroller, which was another fundamental issue that has been corrected. Users depend on swipes, and on mobile it couldn't be done. Taps worked, but all user gestures were detected as a tap instead of a swipe. It was finally fixed.

Here is what I use to detect taps and swipes on a native scroller:

******
-- behavior script, assigned to all scrolling controls:
local sMouseLoc,sStartLoc

on mouseDown
  put the mouseloc into sMouseLoc
  put sMouseLoc into sStartLoc
end mouseDown

on mouseUp
  put "" into sMouseLoc
  if abs(the mouseH - item 1 of sStartLoc) <= 10 and \
        abs(the mouseV - item 2 of sStartLoc) <= 10 then
    send "doScrollerTap" to the target
  else if isSwipe(sStartLoc) then
    doSwipe sStartLoc -- navigate
  end if
end  mouseup

on mouseMove x,y -- desktop scrolling, you can omit this if you don't need it
  if isMobile() or sMouseLoc = "" then exit mouseMove
  put abs(x - item 1 of sMouseLoc) into tHDist
  put abs(y - item 2 of sMouseLoc) into tVDist
  if item 2 of sMouseLoc > y then -- pushing up
if the name of me contains "image" then set the hscroll of me to the hscroll of me + tHDist -- bgImg okay
    set the vscroll of me to the vscroll of me + tVDist
  else if item 2 of sMouseLoc < y then -- pushing down
if the name of me contains "image" then set the hscroll of me to the hscroll of me - tHDist
    set the vscroll of me to the vscroll of me - tVDist
  end if
  put x,y into sMouseLoc
end mouseMove

on mouseRelease
  put "" into sMouseLoc
  put "" into sStartLoc
end mouseRelease
********

This requires that a "doScrollerTap" handler is in the message path if you want to detect taps. Or you could send a different message.

Here is the handler that detects swipes:

******
function isSwipe pStartLoc -- calculate if a gesture is a horizontal swipe
  -- called from scrollerBehavior
  -- pStartLoc = initial mouseloc at mouseDown
  put abs(the mouseH - item 1 of pStartLoc) into tHDist
  put abs(the mouseV - item 2 of pStartLoc) into tVDist
  return tHDist > tVDist -- swipe
end isSwipe
******

On iOS you could also try playing with canCancelTouches and delayTouches to see if that helps. Android doesn't support those though. I did set both to false in one case and it seemed to help when used with the above handlers.


On 12/10/19 12:02 PM, Lagi Pittas via use-livecode wrote:
Hi All

I haven't seen anyone else mention this problem or even get involved in a
discussion here except for Bob to confirm it.
It is a FUNDAMENTAL problem.

@Jacque since you deploy (if memory serves) large android apps  , can you
confirm the error and @Panos is there a
workaround or a fix coming anytime soon?

For IOS 13 we have to use the latest and it is a real pain to work out when
the  Android scroller went wrong within the
V 9 series. - never mind having to have multiple environments to compile
with.

This is a SHOWSTOPPER we have been mostly testing the IOS apps that work
and all of the Android stuff worked
if we didn't have a "long" list that needed to scroll and select. Only
noticed with "Real" data with a long list.

Gone back to 9.5 and the problem is still there.

will try 9.05 and see what happens.

Looks from our testing  that the  ScrollerBeginDrag and ScrollerEndDrag are
not being fired.
Regards Lagi



On Fri, 6 Dec 2019 at 14:51, Sannyasin Brahmanathaswami via use-livecode <
[email protected]> wrote:

On 9.6 dp 1  I was testing on iOS for a week.

Then I tested on Android. Surprising new behavior in the mobileScroller:

It receives the mouseDown as soon as you scroll, or mouseUp after you
scroll. This does not happen on iOS, not did in happen in 9.5 on Android.

How can I prevent this and only trigger a "touch" when the user is not
scrolling?

BR


_______________________________________________
use-livecode mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your
subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

_______________________________________________
use-livecode mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode



--
Jacqueline Landman Gay         |     [email protected]
HyperActive Software           |     http://www.hyperactivesw.com

_______________________________________________
use-livecode mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Reply via email to