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

Adding TextPattern providers to TextBox and UpDown controls #2701

Conversation

M-Lipin
Copy link
Contributor

@M-Lipin M-Lipin commented Jan 13, 2020

Fixes #1588

Proposed changes

  • Adding ITextPatternProvider and ITextPatternProvider2 and related imported accessibility interfaces to WinForms Accessibility.
  • Implementing TextPattern Provider functionality to allow accessibility client apps interact and announce (screen readers) text content of the Text controls.

Customer Impact

  • Visually impaired users will be able to read and interact with the text content of the input text elements.
  • Text inputs and up-down inputs will be fully accessible.

Regression?

  • No

Risk

  • Minimal

Screenshots

Before

Narrator does not announce the text navigation and selection of the TextBox, MaskedTextBox and up-down controls.

After

Narrator announces the text content of the text input controls (navigation, selection)

Test methodology

  • Manual testing.
  • Unit testing (to be implemented).
  • Automation tests.

Accessibility testing

Test environment(s)

.NET Core SDK (reflecting any global.json):
Version: 5.0.100-alpha1-015763
Commit: 0d0c902b77

Runtime Environment:
OS Name: Windows
OS Version: 10.0.18363
OS Platform: Windows
RID: win10-x64
Base Path: C:\Program Files\dotnet\sdk\5.0.100-alpha1-015763\

Host (useful for support):
Version: 5.0.0-alpha.1.19564.1
Commit: c77948d92a

.NET Core SDKs installed:
3.0.101 [C:\Program Files\dotnet\sdk]
3.1.100-preview3-014645 [C:\Program Files\dotnet\sdk]
5.0.100-alpha1-015763 [C:\Program Files\dotnet\sdk]

.NET Core runtimes installed:
Microsoft.AspNetCore.All 2.1.13 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
Microsoft.AspNetCore.App 2.1.13 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.0.1 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.0-preview3.19555.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 5.0.0-alpha1.19575.10 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 2.1.13 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 3.0.1 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.0-preview3.19553.2 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 5.0.0-alpha.1.19564.1 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 5.0.0-alpha.1.19564.2 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.WindowsDesktop.App 3.0.1 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 3.1.0-preview3.19553.2 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 5.0.0-alpha.1.19564.2 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

Microsoft Reviewers: Open in CodeFlow

@M-Lipin M-Lipin requested a review from a team as a code owner January 13, 2020 13:36
@M-Lipin M-Lipin changed the title Adding TextPattern providers to TextBox and UpDown controls WIP: Adding TextPattern providers to TextBox and UpDown controls Jan 13, 2020
@ghost ghost added the 📭 waiting-author-feedback The team requires more information from the author label Jan 16, 2020
Copy link
Member

@RussKie RussKie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ghost ghost removed the 📭 waiting-author-feedback The team requires more information from the author label Jan 28, 2020
@M-Lipin M-Lipin force-pushed the dev/v-milipi/Issue_1588_TextPatternProviders branch from d12296c to bae9d4c Compare January 29, 2020 11:01
Copy link
Contributor

@weltkante weltkante left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This PR is adding a huge amount of interop declarations which on a quick glance don't seem to follow the patterns used with the recent interop refactorings

That aside the PR also introduces a lot more cases of wrong usage of ComVisible(true) attributes (#1878) - while we have an issue to fix these there's no point for new PRs adding wrong declarations. Unless you are on a time constraint and have to merge immediately its better to fix them first to avoid adding more work to be done later in #1878.

/cc @JeremyKuhne for commenting on interop

src/Common/src/Interop/UiaCore/Interop.ITextProvider.cs Outdated Show resolved Hide resolved
src/Common/src/Interop/UiaCore/Interop.TextUnit.cs Outdated Show resolved Hide resolved
@ghost ghost added 📭 waiting-author-feedback The team requires more information from the author and removed 📭 waiting-author-feedback The team requires more information from the author labels Feb 10, 2020
@weltkante

This comment has been minimized.

@vladimir-krestov vladimir-krestov force-pushed the dev/v-milipi/Issue_1588_TextPatternProviders branch from 55abe54 to f2baffc Compare September 7, 2020 07:41
@vladimir-krestov
Copy link
Contributor

vladimir-krestov commented Sep 7, 2020

Testers approved the fix ✔️

@vladimir-krestov
Copy link
Contributor

@Pilchie : seeking approval to merge in 5.0-rc2 branch.

@RussKie RussKie added Servicing-consider .NET Shiproom label indicating a PR seeks to enter into a branch under Tell-Mode criteria Priority:1 Work that is critical for the release, but we could probably ship without labels Sep 8, 2020
@Pilchie
Copy link
Member

Pilchie commented Sep 8, 2020

@JeremyKuhne - you've got a request changes on this. Is that still valid?

Copy link
Member

@JeremyKuhne JeremyKuhne left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Discussed expectations with @RussKie last week. Given he has asked for M2 and testers have signed off this seems ok. Took another quick look and nothing jumped out.

@JeremyKuhne JeremyKuhne dismissed their stale review September 8, 2020 18:31

It appears that requested changes have been applied. Cannot get GitHub to load the full discussion history to find the unresolved request.

@Pilchie Pilchie added Servicing-approved .NET Shiproom approved the PR for merge and removed Servicing-consider .NET Shiproom label indicating a PR seeks to enter into a branch under Tell-Mode criteria labels Sep 8, 2020
@Pilchie
Copy link
Member

Pilchie commented Sep 8, 2020

Approved for .NET 5.0 RC2 pending an explicit code review sign-off.

@RussKie RussKie removed the Priority:1 Work that is critical for the release, but we could probably ship without label Sep 9, 2020
@ghost ghost assigned M-Lipin Sep 9, 2020
@RussKie RussKie added the Priority:1 Work that is critical for the release, but we could probably ship without label Sep 10, 2020
@RussKie
Copy link
Member

RussKie commented Sep 10, 2020

@JeremyKuhne standing by for your final review

@RussKie RussKie added the waiting-review This item is waiting on review by one or more members of team label Sep 10, 2020
@RussKie RussKie removed Priority:1 Work that is critical for the release, but we could probably ship without waiting-review This item is waiting on review by one or more members of team labels Sep 10, 2020
Copy link
Member

@JeremyKuhne JeremyKuhne left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have some follow-up for master in #3853, but this one should be good.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Servicing-approved .NET Shiproom approved the PR for merge
Projects
None yet
10 participants