microsoft / microsoft/microsoft-ui-xaml

Disabled RadioButton blocks Tab navigation

Open
#10,366 0 comments 0 reactions 0 assignees View on GitHub
area-Button area-FocusManager area-RadioButtons bug team-Controls
Dominant language
C++
Stars
8.4k
Forks
942
Avg merge
2d 7h
Merged PRs (30d)
105

Description

### Describe the bug

When a RadioButton is disabled **while being selected**, the Tab navigation gets interrupted. The keyboard focus does not move to the next (or previous, in case of using "shift + tab") interactive element after (or before, in case of using "shift + tab") the disabled RadioButton, making it impossible to navigate properly through the components in the screen.

**Additionally**, the other enabled RadioButtons in the same group do not receive keyboard focus, making it impossible to select them using the keyboard, **even though they can still be selected with the mouse.**

Check the video below.

- Pressing Tab from Button 2 does not move focus to Button 3.

- Pressing Shift + Tab from Button 3 does not move focus back to Button 2.

- The other enabled RadioButtons do not receive focus via keyboard navigation (Tab or Arrow keys), but they can still be selected with the mouse

https://github.com/user-attachments/assets/7655f8b6-cbba-46c9-a53c-12c5849252e9

### Steps to reproduce the bug

1. Add one or more elements to a page.
2. Add a RadioButtons group in the middle, containing some RadioButton elements.
3. Add one or more elements after the RadioButtons.
4. Select one RadioButton.
5. Disable the selected RadioButton.
6. Try navigating using the Tab and Shift + Tab keys between elements before and after the RadioButtons.

### Expected behavior

- Tab navigation should not be blocked by the disabled RadioButton.

- Users should be able to navigate past the disabled RadioButton to the next available focusable element

**OR**
- The enabled RadioButtons should be focusable and selectable using the keyboard

### Screenshots

_No response_

### NuGet package version

None

### Windows version

Windows 11 (24H2): Build 26100

### Additional context

_No response_

Contributor guide

Open the contributing guide

Research direction

The issue does not name implementation files or tests. Start by reproducing the disabled-selected RadioButton case in a WinUI XAML page, then trace RadioButton keyboard focus behavior for Tab, Shift+Tab, and arrow keys. Done means focus can move past the disabled control or enabled RadioButtons remain keyboard-focusable and selectable.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
accessibility, desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.