bytedance / bytedance/UniVR

Number game choices are not keyboard accessible

Open Beginner friendly
#9 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
32
Forks
2
PR merge metrics
No merged PRs in 30d

Description

### Affected revision and verification

`main` at `3d1965cac5529b72c9dab9af7a3f456c5bbd7172`.

I served `UniVR_RL/examples/android_gui_cookbook/game_docker/number_game.html` locally and checked it at both 1280 px and 375 px widths. Pointer selection works and the mobile layout does not overflow, but the three number cards are generated as `div` elements with `onclick` handlers and no role or tab stop. Repeated Tab presses on the initial game state never focus a card. The viewport also sets `user-scalable=no`.

### Expected behavior

The three primary game choices should be native keyboard-focusable controls that can be activated with Enter/Space, and browser zoom should remain available.

### Actual behavior

The choices are pointer-only generic elements, so keyboard and switch-device users cannot play the game. The viewport declaration also disables pinch zoom.

### Impact

The only meaningful interaction in this example is inaccessible without a pointing device, and low-vision users cannot use browser zoom.

### Suggested fix

Create the choices as `button type="button"` elements while preserving the existing styling and click handler, remove the zoom restriction, and add a small HTML-source regression test for these semantics.

Contributor guide

No contributing guide indexed for this repository

Research direction

Open UniVR_RL/examples/android_gui_cookbook/game_docker/number_game.html and inspect the three number-card elements, their onclick handlers, and the viewport declaration. Convert the choices to keyboard-focusable controls while preserving the styling and interaction, keep browser zoom available, and add the suggested HTML-source regression test for the resulting semantics.

Written by the indexing model from the issue text.

Assessment

Tech stack
html, javascript
Domain
accessibility, frontend
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Active
Clarity
Clearly specified
Newbie friendliness
88/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.