DiamondLightSource / DiamondLightSource/sci-react-ui

Make "read-only" input more obvious

Open
#272 7 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
8
Forks
3
Avg merge
3d 15h
Merged PRs (30d)
5

Description

[Atlas Issue #146:](https://github.com/DiamondLightSource/atlas/issues/146) For the i15-1 puck selection a component was made read-only ([see discussion](https://github.com/DiamondLightSource/atlas/pull/133#discussion_r3721451891)) but it's not obvious to a user that this is read-only at a glance. We should make read only components more visually distinctive

Image

### What is the difference between Disabled and Read-only?
In a nut shell:
• **Disabled**: field doesn’t apply right now (irrelevant). It is removed from tab order (skipped by assistive technologies), not submitted as data. Example: when a field is inactive, because you need to select something else before this one is relevant, or, when items are being loaded into a list (disabled until active).
• **Read-only**: value still matters, just locked. Stays focusable, announced, and in tab order. The user needs to read it, not just see it greyed out. With a normal text field,`read-only` means you can select it or copy text from it (with Select I'm not so sure). Example: the current state of an item is locked, but current selection is viable information, or, see the status assigned by another user, but you cannot change it yourself.

Contributor guide

Open the contributing guide

Research direction

Start with the i15-1 puck-selection component and review Atlas Issue #146 plus the linked PR discussion for the existing read-only behavior. Make read-only components visually distinctive without treating them as disabled, then verify that the value remains focusable, announced, and in the tab order.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
accessibility, design, frontend
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
56/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.