adobe / adobe/spectrum-web-components

[Bug]: sp-number-field pressing increment/decrement buttons with VO on iOS double presses buttons

Open
#3,274 10 comments 0 reactions 0 assignees View on GitHub
a11y bug Component:Number field SEV 3 VoiceOver
Dominant language
TypeScript
Stars
1.5k
Forks
262
Avg merge
3d 10h
Merged PRs (30d)
68

Description

### Code of conduct

- [X] I agree to follow this project's code of conduct.

### Impacted component(s)

sp-number-field

### Expected behavior

should be able to press buttons to increase/decrease numbers in sp-number-field

### Actual behavior

pressing the buttons seems to refresh the page and moves focus AND double presses the buttons

### Screenshots

_No response_

### What browsers are you seeing the problem in?

Safari

### How can we reproduce this issue?

1. Go to https://opensource.adobe.com/spectrum-web-components/components/number-field/
2. start VO on iOS
3. tap on the number field
4. swipe right to move to the increase button
5. double tap to press the button
6. note the keyboard activates then deactivates
7. Focus moves to the "Show sidebar" button at the top of the page
8. The value increases by 2 steps

### Sample code that illustrates the problem

_No response_

### Logs taken while reproducing problem

_No response_

Contributor guide

Open the contributing guide

Research direction

Start at the sp-number-field component shown in the reproduction URL and reproduce the increment-button flow with VoiceOver on iOS Safari. Trace the focus and keyboard behavior during the double tap; done means each button activation changes the value once, keeps focus in the number field, and does not refresh or move focus to the sidebar.

Written by the indexing model from the issue text.

Assessment

Tech stack
ios, typescript
Domain
accessibility, frontend, mobile-dev
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.