Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Accessibility] The values of IsKeyboardFocusable and HasKeyboardFocus fields are incorrect for DomainUpDown/NumericUpdown control in Inspect UIA structure #4123

Closed
John-Qiao opened this issue Oct 16, 2020 · 4 comments · Fixed by #4127
Assignees
Labels
tenet-accessibility MAS violation, UIA issue; problems with accessibility standards

Comments

@John-Qiao
Copy link
Member

John-Qiao commented Oct 16, 2020

  • .NET Core Version:
    .NET SDK 6.0.100-alpha.1.20514.15

  • Have you experienced this same bug with .NET Framework?:
    No

More Info:

  1. This issue does not occur in .NET Core 3.1 and .NET Framework.
  2. This issue occurs in NumericUpDown control too.

Problem description:

The IsKeyboardFocusable field is false and the HasKeyboardFocus field is true in UIA structure.
Actual

Expected behavior:

The IsKeyboardFocusable field is true and the HasKeyboardFocus field is false in UIA structure. Like it works in .NET Core 3.1 or .NET Framework.
Expected

Minimal repro:

  1. Open the attached TestApp.zip project in VS, run it and launch the Inspect tool.
  2. Click on the DomainUpDown edit control and move the mouse pointer to focus on the whole DomainUpDown control.
  3. Observe the IsKeyboardFocusable and HasKeyboardFocus fields' value in Inspect UIA structure.
    ReproSteps
@John-Qiao John-Qiao added the tenet-accessibility MAS violation, UIA issue; problems with accessibility standards label Oct 16, 2020
@John-Qiao John-Qiao changed the title [Accessibility] The values of IsKeyboardFocusable and HasKeyboardFocus fields are incorrect for DomainUpDown/ control in Inspect UIA structure [Accessibility] The values of IsKeyboardFocusable and HasKeyboardFocus fields are incorrect for DomainUpDown/NumericUpdown control in Inspect UIA structure Oct 16, 2020
@Tanya-Solyanik
Copy link
Member

@John-Qiao - good bug! Do you happen to know when this regressed in 5.0?

albertvaka added a commit to albertvaka/winforms that referenced this issue Oct 17, 2020
@ghost ghost added the 🚧 work in progress Work that is current in progress label Oct 17, 2020
@John-Qiao
Copy link
Member Author

@Tanya-Solyanik in my test result, this issue still can be reproduced with .NET 5.0.100-preview.2.20175.2 SDK, please check below screenshot:
NET5 0-P2

And I tried to reproduce this issue with .NET 5.0.100-preview.1.20155.7 SDK too, but the project can only be built in 'dotnet build' command line, it cannot be started after executed the 'dotnet run' command, just nothing happened in below screenshots:

  1. Run project when .NET 5.0.100-preview.1.20155.7 SDK installed:
    NET5 0-P1

  2. Run project when .NET 5.0.100-preview.2.20175.2 SDK installed:
    NET5 0-P2-run

@merriemcgaw
Copy link
Member

@vladimir-krestov - getting this in the accessibility project and to the in progress link.

@ghost ghost closed this as completed in #4127 Oct 27, 2020
@ghost ghost removed the 🚧 work in progress Work that is current in progress label Oct 27, 2020
ghost pushed a commit that referenced this issue Oct 27, 2020
Fixes #4123

I tracked the current behavior to this PR: #2382

## Proposed changes

- DomainUpDown/NumericUpdown should return true when queried for IsKeyboardFocusablePropertyId and they are visible and enabled. This is the behavior of the base class, so we shouldn't override it here.

## Regression? 

- Yes.

## Risk

- Someone might be relying on the current behavior.

## Test methodology <!-- How did you ensure quality? -->

- Added new tests.
@RussKie RussKie removed this from the 6.0 Preview2 milestone Oct 27, 2020
@John-Qiao
Copy link
Member Author

Verified the issue in .NET 6.0.100-alpha.1.20557.2 SDK from Master branch, this issue has been fixed that the IsKeyboardFocusable field is true in DomainUpDown and NumericUpdown controls now.
TR2
TR1

@dotnet dotnet locked as resolved and limited conversation to collaborators Jan 30, 2022
This issue was closed.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
tenet-accessibility MAS violation, UIA issue; problems with accessibility standards
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants