Skip to content
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

Have a clearer unselected state in Calcite List #6700

Closed
CodeBarker opened this issue Mar 29, 2023 · 37 comments
Closed

Have a clearer unselected state in Calcite List #6700

CodeBarker opened this issue Mar 29, 2023 · 37 comments
Assignees
Labels
4 - verified Issues that have been released and confirmed resolved. ArcGIS Map Viewer Issues logged by ArcGIS Map Viewer team members. design Issues that need design consultation prior to development. enhancement Issues tied to a new feature or request. p - medium Issue is non core or affecting less that 60% of people using the library ready for dev Issues ready for development implementation.

Comments

@CodeBarker
Copy link

CodeBarker commented Mar 29, 2023

Description

We've had users share that the unselected state of the calcite list doesnt immediately communicate it is selectable. When one or more items is selected by default it is not as critical, However for lists where there is no default selection it just looks like empty space and users are confused

Acceptance Criteria

Current

image

Desired

image

Relevant Info

No response

Which Component

calcite list / calcite list item

Example Use Case

No response

Priority impact

p3 - want for upcoming milestone

Esri team

ArcGIS Map Viewer

@CodeBarker CodeBarker added 0 - new New issues that need assignment. enhancement Issues tied to a new feature or request. needs triage Planning workflow - pending design/dev review. labels Mar 29, 2023
@github-actions github-actions bot added p3 - want for upcoming milestone ArcGIS Map Viewer Issues logged by ArcGIS Map Viewer team members. labels Mar 29, 2023
@asangma
Copy link
Contributor

asangma commented Mar 29, 2023

I would adjust the design to not look disabled and instead have empty boxes when unselected.

I think it might also be good to apply standard patterns and use square for multi.

@macandcheese
Copy link
Contributor

@asangma Agreed, either using the circle-empty + check-circle-f or square and square-check-f here would clear this up.

@asangma
Copy link
Contributor

asangma commented Apr 3, 2023

@macandcheese I could also see something like an appearance="minimal" or something that would mimic PickList's selection indicators but with an added hover state that shows the check or dot. I can add mockups if that's helpful.

@macandcheese
Copy link
Contributor

macandcheese commented Apr 3, 2023

We have selection-appearance property which accepts icon or border (https://codepen.io/mac_and_cheese/pen/BaOXxEv?editors=100) - if we need to add another distinct visual we could add an additional value there.

But I think having a default icon that is always present to represent "unselected" would be a good start. It could use a lighter fill to prevent the list from being too visually cluttered with those unselected items.

Screen Shot 2023-04-03 at 9 43 39 AM

(May want to adjust the padding here so the selection icons are more equally spaced)

@asangma
Copy link
Contributor

asangma commented Apr 3, 2023

💯

@asangma
Copy link
Contributor

asangma commented Apr 3, 2023

And yeah...the spacing needs some love. :)

@asangma
Copy link
Contributor

asangma commented Apr 4, 2023

Suggested spacing between the selection icon and the text:
Use the same spacing that Button has between its content and icon...and maaaaybeee that spacing could be a little tighter (0.5rem for medium)? 😬

@geospatialem geospatialem removed the needs triage Planning workflow - pending design/dev review. label Jun 15, 2023
@brittneytewks brittneytewks added this to the Design Sprint Next milestone Jun 15, 2023
@ashetland ashetland added the design Issues that need design consultation prior to development. label Jun 26, 2023
@hcampos-professional
Copy link

Another feedback we got, specifically with regards to the selection-appearance="border" was that the focus highlight and the border can cause confusion. When the focus outline is visible, it seems as though the list item is selected.
1a7938f1-da23-4b3f-b404-5fb74ee86225
dbd3d086-456e-4656-bf55-9f8da73e333b

@Anastasiia-Boleiko
Copy link

Hi there👋
Also, some feedback regarding the List component😉.
In our case, we were also playing a bit with styling of the List to adjust it to our needs and realized, that the icon selection-appearance="icon" adds quite a large gap before the label, so we decided to proceed with a selection-appearance="border". But it would be really nice to have an additional "flag" that shows a selection. Just as an idea: add a background (on the screenshot it's a ui-brand with 0.1 opacity).
Screenshot 2023-07-06 at 16 44 13

@RSantosGIS
Copy link

From my comment in Teams:

Hey Calcite, good morning. I was wondering, is there a way to get actions in slots for CalciteList to have the same hover behavior as block? Calcite Block only does hover styling on the action, and stops propogation to the parent (so the whole block isn't also hover-styled). List, however, appears to propagate the hover to the parent, which causes the whole list element to be hover highlighted except sibling actions it also creates an unattractive "border" around said sibling, like so (my mouse is hovering the ellipsis action, as indicated by the red dot):
MicrosoftTeams-image (10)

@ashetland ashetland added 1 - assigned Issues that are assigned to a sprint and a team member. and removed 0 - new New issues that need assignment. labels Aug 7, 2023
@ashetland ashetland self-assigned this Aug 7, 2023
@ashetland ashetland added the p - medium Issue is non core or affecting less that 60% of people using the library label Aug 7, 2023
@ashetland
Copy link

Figma designs available for updated selection iconography and tweaks to the border selection appearance to retain visibility when focused. Related designs for other components are included for reference. We plan to look more deeply at hover states as part of a future system-wide appearance effort.

@ashetland ashetland added the ready for dev Issues ready for development implementation. label Sep 11, 2023
@DitwanP DitwanP added the 4 - verified Issues that have been released and confirmed resolved. label Jan 8, 2024
@ethanbdev
Copy link
Contributor

Hey all, with this issue the default hover pointer was changed for the list item - would it be possible to keep that and re-visit hover states? Maybe checking with folks?

We have discussed before we have a pattern of using the list item in the style of a button for a flow-like ux. I can try track down other discussions we have had on this

image

@driskull
Copy link
Member

@ethanbdev for the hover to be present, the selctionMode should be set to something other than "none". Otherwise this could be done using CSS token variables.

@ethanbdev
Copy link
Contributor

Related: #6123

@ethanbdev
Copy link
Contributor

@ethanbdev for the hover to be present, the selctionMode should be set to something other than "none". Otherwise this could be done using CSS token variables.

Hey, I linked the issue with the original discussion on this, will that no longer be supported?

@driskull
Copy link
Member

@geospatialem maybe we need to discuss this one.

Its odd for a list with no selection to have a hover and pointer.

Maybe we add another selectionAppearance for drill in or "none" or a separate drill in component altogether.

@macandcheese
Copy link
Contributor

Another option here is Menu Items, here is an example from the documentation with Flow / Flow Item and Menu / Menu Item: https://codepen.io/mac_and_cheese/pen/qBvrQOz?editors=1000

@mpayson
Copy link

mpayson commented Jan 17, 2024

I think the challenge is our apps are using calcite-list like a list of buttons, not as a list of dependent selectable items or non-interactive elements. This pattern is relatively common in our apps right now, and it looks like is part of the Figma designs for this issue (selectionMode="none" has hover and pressed states)

If it's helpful, another area this pattern is used in web analysis is to show a list of input layers, where clicking on the layer should open a dialog to replace that layer, and clicking the slotted "x" should remove that layer from the list

Screenshot Screenshot 2024-01-17 at 6 03 04 PM

@geospatialem
Copy link
Member

Reopening to revert the installation above, and discuss alternatives for future implementation to ensure precious support mentioned in #6700 (comment) and #6700 (comment).

The revert will be part of an upcoming maintenance release targeted prior to R1. cc @ethanbdev @mpayson

@geospatialem geospatialem reopened this Jan 17, 2024
@geospatialem geospatialem added 0 - new New issues that need assignment. and removed 4 - verified Issues that have been released and confirmed resolved. labels Jan 17, 2024
@macandcheese
Copy link
Contributor

@mpayson not sure if this changes the selectionMode need, but I do find it strange the List Item itself is triggering that Replace Layer action. It seems like something that could be invoked from an action within the List Item itself:

Screenshot 2024-01-17 at 3 45 32 PM

driskull added a commit that referenced this issue Jan 18, 2024
**Related Issue:** #6700

## Summary

It was decided that the majority of cases use the layer list to perform
some kind of action so the default should be to have hover and pointer
styling by default. In the future, we may add another selectionMode to
provide a better UX for "non interactive" lists.

Further information:
#6123 (comment)

- Always has the hover and pointer styling on a list item regardless of
selectionMode
- Add e2e test
@driskull driskull added 3 - installed Issues that have been merged to master branch and are ready for final confirmation. and removed 0 - new New issues that need assignment. labels Jan 18, 2024
Copy link
Contributor

Installed and assigned for verification.

@geospatialem geospatialem added 4 - verified Issues that have been released and confirmed resolved. and removed 3 - installed Issues that have been merged to master branch and are ready for final confirmation. labels Jan 23, 2024
@geospatialem
Copy link
Member

The default hover pointer change has been reverted and is verified in 2.2.1-next.1 with https://codepen.io/geospatialem/pen/XWGaopO.

cursor

A new issue has been created to add a new selection mode in the future, while also supporting the pointer, via #8634.

Closing the above as verified.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
4 - verified Issues that have been released and confirmed resolved. ArcGIS Map Viewer Issues logged by ArcGIS Map Viewer team members. design Issues that need design consultation prior to development. enhancement Issues tied to a new feature or request. p - medium Issue is non core or affecting less that 60% of people using the library ready for dev Issues ready for development implementation.
Projects
None yet
Development

No branches or pull requests