-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Modifier.draggable onDragStopped not called. #3310
Modifier.draggable onDragStopped not called. #3310
Comments
Investigation part 1Call of this lambda is happening after dispatching DragStopped event. On Android is DragStopped event is consumed (in Draggable.kt:251) when finger leaves screen on any side(left, top, bottom, right) of the screen, on iOS - any side except right one. The expected sequence of events will be called normal, and a buggy one - buggy. Events are created using result of Buggy sequence is processDragStart - n x dragBy - freeze (no touches are processed, takes approx 0.5s before it can cancel) - processDragCancel on touch after freeze On buggy sequence Inside closure passed to This method has a simple implementation of: On buggy sequence last received Events source data is correct and sent at ComposeLayer.jsNative.kt:68
|
Investigation part 2Investigating absence of event with On normal sequence:
On buggy sequence:
It means that the implementation of AwaitPointerEventScope doesn't forward it to us. |
ResolutionEvent is not sent in ComposeScene.processRelease because pressOwner is null due to logical error and hoveredOwner is also null, because the touch is slightly outside the bounds of window due to floating-point multiplication error. |
Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks. |
Describe the bug
If a user drags his finger to the right part of the screen until the finger leaves the screen during scrolling content, onDragStopped lambda is not called.
Affected platforms
Select one of the platforms below:
Versions
jb-main 864ab80ff12dc70377d2f28d0a9bfbafd402ea44
Expected behavior
It must be called.
Notes
Not reproducible on Android.
The text was updated successfully, but these errors were encountered: