Esri / calcite-design-system

A monorepo containing the packages for Esri's Calcite Design System
https://developers.arcgis.com/calcite-design-system/
Other
293 stars 76 forks source link

List Item - make it more obvious when drag-disabled #9283

Open asangma opened 6 months ago

asangma commented 6 months ago

Check existing issues

Description

ListItem has drag-disabled. This is good, but there are cases when the drag will never be enabled. In those cases it would be a better UX if the drag-handle were not rendered or at least were rendered with even lower opacity.

I propose to be able to hide the handle when drag-disabled or reduce the opacity of a disabled handle more.

In this example, the child items may never need drag and drop while the parent would regularly need drag.

image

cc @driskull

Acceptance Criteria

Relevant Info

No response

Which Component

ListItem

Example Use Case

CatalogLayer. Because the structure of this layer type, its children may never need drag and drop.

Priority impact

p3 - want for upcoming milestone

Calcite package

Esri team

ArcGIS Maps SDK for JavaScript

asangma commented 6 months ago

Reopening this. Based on implementation in our JS SDK for LayerList, it would still be useful to selectively turn off the drag handle for specific ListItems in a List that has drag-enabled.

asangma commented 6 months ago

In this example, there are two items that whose dragging cannot be enabled. While the handles are disabled, the lowered opacity doesn't provide a great amount of contrast.

image

asangma commented 6 months ago

Lower opacity (0.25) image

Icon set to blank image

driskull commented 6 months ago

This would be for design to consider. Added the label

asangma commented 6 months ago

Thanks @driskull. 🤘🏾

ashetland commented 1 month ago

Updated the Acceptance Criteria above to use icon="blank" or similar approach to hide the drag handle, but retain space for it.

github-actions[bot] commented 1 month ago

cc @geospatialem, @brittneytewks

driskull commented 1 month ago

We can do this in conjunction with https://github.com/Esri/calcite-design-system/issues/7537