Esri / feedback-js-api-next

Try out the next release of the ArcGIS Maps SDK for JavaScript and share your feedback. Be warned: this release is still in development and is unstable.
87 stars 23 forks source link

Drag&Drop will broke itself by touch control #284

Closed TomGeograf closed 7 months ago

TomGeograf commented 9 months ago

IMPORTANT

Actual behavior

On mobile device or even on emulation of device in web browser does not work drag&drop in LayerList with touch control. After few attemptions it stucks in process of changing order of layers.

Expected behavior

I expect no freeze or stuck during the process of change layer order.

Reproduction sample

https://github.com/TomGeograf/ArcGIS-JS/blob/main/layerlist.html

Reproduction steps

  1. Open dev tools
  2. Emulate mobile device with touch control
  3. Try to change layer order (maybe few times)

Reproduction browser

MS Edge 120, Windows 11

SDK version (check your console)

ArcGIS Maps SDK for JavaScript 4.29-next [Date: 20240207, Revision: a0f4d97f]

Operating System (check https://whatsmyos.com)

Windows 11 64-bit

sagewall commented 9 months ago

Thanks for reporting @TomGeograf

sagewall commented 9 months ago

I've created an internal issue, I'll comment back here when it's been fixed.

TomGeograf commented 9 months ago

Thanks!

Will be possible to enable Drag&drop only for layers and not for their sublayers?


From: Sage Wall @.> Sent: Monday, February 12, 2024 4:03:53 PM To: Esri/feedback-js-api-next @.> Cc: Tomáš Němeček @.>; Mention @.> Subject: Re: [Esri/feedback-js-api-next] Drag&Drop will broke itself by touch control (Issue #284)

I've created an internal issue, I'll comment back here when it's been fixed.

— Reply to this email directly, view it on GitHubhttps://github.com/Esri/feedback-js-api-next/issues/284#issuecomment-1938848243, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AYIGM7MZQV6DNMVAU62MIWLYTIVNTAVCNFSM6AAAAABDEYAEN6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMZYHA2DQMRUGM. You are receiving this because you were mentioned.Message ID: @.***>

sagewall commented 9 months ago

No current plans to prevent sublayer's from being reordered, but it's an idea worth considering. I can see how that might be useful in some situations.

sagewall commented 9 months ago

Related issue: https://github.com/Esri/calcite-design-system/issues/8728

TomGeograf commented 9 months ago

New API is live, but this bug is still here, why? :(

sagewall commented 9 months ago

Hi @TomGeograf, we learned about this bug too late in the development cycle to risk upgrading the version of calcite the API uses for the 4.29 release. The bug has been fixed in the calcite components library and will be picked up by the API for the 4.30 release.

sagewall commented 9 months ago

@TomGeograf If you upgrade your application to use a newer version of the calcite components, might help. If you are using @arcgis/core: npm install @esri/calcite-components@latest

I tested this out in this codepen, and by including the latest calcite library (currently v2.5.1) by CDN and drag and drop seems to be working correctly on iOS 17.3.1. However, I was still having issues with my Android device.

A little more info can be found here about compatible calcite versions in the release notes

TomGeograf commented 9 months ago

Thanks, but I am not using npm and calcite components in this way..

Unfortunately, I have to revert back to reorder layers by action buttons. But I found there another bug with broken action toggle button.


From: Sage Wall @.> Sent: Tuesday, February 27, 2024 6:23:57 PM To: Esri/feedback-js-api-next @.> Cc: Tomáš Němeček @.>; Mention @.> Subject: Re: [Esri/feedback-js-api-next] Drag&Drop will broke itself by touch control (Issue #284)

@TomGeografhttps://github.com/TomGeograf If you upgrade your application to use a newer version of the calcite components, might help. If you are using @arcgis/core: npm install @@.***

I tested this out in this codepenhttps://codepen.io/sagewall/full/qBwWREx, and by including the latest calcite library (currently v2.5.1) by CDN and drag and drop seems to be working correctly on iOS 17.3.1. However, I was still having issues with my Android device.

A little more info can be found here about compatible calcite versions in the release noteshttps://developers.arcgis.com/javascript/latest/release-notes/#additional-packages

— Reply to this email directly, view it on GitHubhttps://github.com/Esri/feedback-js-api-next/issues/284#issuecomment-1967247226, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AYIGM7MH2D3HWF4KMKKS5ODYVYJC3AVCNFSM6AAAAABDEYAEN6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNRXGI2DOMRSGY. You are receiving this because you were mentioned.Message ID: @.***>

sagewall commented 7 months ago

Hi @TomGeograf , We've been able to fix this in the core API by upgrading to calcite version 2.7.1. It should be available on the public next branch on next Monday's build.