adobe / adobe/spectrum-web-components

[Bug]: SWC Link Component Not Keyboard Navigable in Safari

Open
#5,581 3 comments 0 reactions 0 assignees View on GitHub
bug Component:Link needs-jira-ticket SEV missing
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)

Link

### Expected behavior

Links should be focusable and keyboard accessible in all browsers

### Actual behavior

Links are skipped in tab order and cannot be activated with keyboard
### Environment

- Browser: Safari (desktop and iOS)
- OS: macOS, iOS
- SWC Version: Latest
- External Keyboard: Required for iOS testing

### Additional Context

- This issue specifically affects Safari/WebKit browsers
- Chrome, Firefox, and Edge work correctly
- The issue is more pronounced on iOS Safari with external keyboards
- Native HTML elements work fine in the same environment

### Screenshots

_No response_

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

Safari

### How can we reproduce this issue?

1. Open Safari (desktop or iOS)
2. Navigate to a page with SWC Link components (e.g., https://opensource.adobe.com/spectrum-web-components/components/link/)
3. Connect an external keyboard (if testing on iOS)
4. Try to use Tab/Shift+Tab to navigate through the links
5. Try to use Enter or Space to activate the links

### Sample code or abstract reproduction which illustrates the problem

_No response_

### Severity

None

### Logs taken while reproducing problem

_No response_

### Would you like to track this issue in Jira?

- [ ] Yes, please tell me the ticket number!

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the issue on the SWC Link component page in Safari, including iOS Safari with an external keyboard, then inspect the Link implementation and its existing tests. Done means Link components enter the tab order and activate with Enter or Space in Safari while preserving the behavior reported for Chrome, Firefox, and Edge.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
accessibility, frontend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.