-
Notifications
You must be signed in to change notification settings - Fork 77
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
[list] - unable to drag and drop list items successfully with nested lists #9521
Comments
@jcfranco when we patched sortable, we patched it with my assumed fix but not the correct fix that went into Sortable. We may need to re-patch. |
I can't reproduce this on my iphone or iphone simulator. Is it only on chrome on Pixel 7? Or can it be reproduced on an ios device? |
@driskull In this example if you try to drag the nested item (the third item) containing additional nested items I was able to verify on my iPhone in Chrome: IMG_0953.MP4 |
I can reproduce it in the codepen, even using chrome devtools with a mobile device enabled but I can't reproduce it with a local build. |
@jcfranco I can't reproduce it when the local server is running. However, If I do a build and copy the dist files I can reproduce it. Any ideas on why that might be? Some sort of minify or patch problem? |
Managed to reproduce and debug from a built copy. PR will be incoming shortly. |
**Related Issue:** #9521 ## Summary - Makes sure that `connectSortableComponent` isn't called during an active drag of a sortable item. - Previously, mutation observers were calling `connectSortableComponent` during a drag - This caused the existing implementation to be destroyed and a new one created which left the user in a frozen state. - This only occurred on mobile devices because mobile devices do not use native drag and drop with Sortable.js - The fix makes sure that `connectSortableComponent` and `disconnectSortableComponent` do nothing during an active drag.
Installed and assigned for verification. |
Verified in verify.MP4 |
Re-opening the above to mitigate the third party library recommended approach. |
**Related Issue:** #9521 ## Summary - patch sortablejs with the correct update to fix dragging shadow elements on mobile devices - SortableJS/Sortable#2347 SortableJS/Sortable#2346
Installed and assigned for verification. |
Verified in |
@geospatialem I think there may still be an issue with Android devices. iOS may be okay but I'm seeing issues on my personal pixel 7 phone and multiple browserstack android phones using version 2.10.1 screenRecording-11-7-2024-17-13.mp4 |
Check existing issues
Actual Behavior
When a list contains another list in a list-item and drag-enabled is true the list items fail to move as expected and the list becomes unresponsive when an item is dragged.
I think this was previously partially addressed with #8728 but the fix perhaps didn't address nested list items.
Expected Behavior
The drag and drop behavior works on mobile devices using touch gestures with nested lists.
Reproduction Sample
https://codepen.io/sagewall/pen/LYoyryy
Reproduction Steps
Reproduction Version
2.8.3 and 2.9.0
Relevant Info
Pixel 7, Chrome
Regression?
No response
Priority impact
impact - p1 - need for current milestone
Impact
This impacts the LayerList, BasemapLayerList, and TableList Javascript SDK widgets and the applications that use them like Map Viewer, Experience Builder and Instant Apps.
Also identified as a bug via
BUG-000167708
.Calcite package
Esri team
ArcGIS Maps SDK for JavaScript
The text was updated successfully, but these errors were encountered: