-
Notifications
You must be signed in to change notification settings - Fork 987
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
fix #12358 [HDPI] The "document" text in the “Generating Previews” dialog is truncated at >200% DPI #12363
base: main
Are you sure you want to change the base?
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #12363 +/- ##
===================================================
+ Coverage 75.64857% 75.73717% +0.08859%
===================================================
Files 3120 3159 +39
Lines 635396 636113 +717
Branches 46933 47001 +68
===================================================
+ Hits 480668 481774 +1106
+ Misses 151270 150868 -402
- Partials 3458 3471 +13
Flags with carried forward coverage won't be shown. Click here to find out more.
|
…ws” dialog is truncated at >200% DPI
a2b6bdb
to
034658b
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
Changes seem fine to me, but could we do testing on this to make sure there are no other regressions |
...dows.Forms/src/System/Windows/Forms/Printing/PrintControllerWithStatusDialog.StatusDialog.cs
Show resolved
Hide resolved
Tested private dlls for this PR, here is the result. For 11456, issue3(An error was detected by using Accessibility Insight tool for the "Page 1 of document" pattern) has been fixed. Currently only Narrator can't announce “Generating Previews”, NVDA and JAWS can announce it correctly, and isDialog and AccessibleName properties are correct. For 12358, three regression HDPI issues (compared with the behaviors in .NET 8.0) still repro. See details in the team's channel. |
...dows.Forms/src/System/Windows/Forms/Printing/PrintControllerWithStatusDialog.StatusDialog.cs
Outdated
Show resolved
Hide resolved
...ws.Forms/src/System/Windows/Forms/Printing/PrintControllerWithStatusDialog.FocusableLabel.cs
Outdated
Show resolved
Hide resolved
@Epica3055 - what accessible properties differ between the Label and the LinkLabel? Let's review them and any important property, like ControlType, can be fixed in a custom accessible object. |
@Tanya-Solyanik |
Name and Automation Id properties are in your control, it will be set here - |
4ac7efe
to
5301f92
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changes look good, could you please get them tested under different screen readers
...ws.Forms/src/System/Windows/Forms/Printing/PrintControllerWithStatusDialog.FocusableLabel.cs
Outdated
Show resolved
Hide resolved
Tested private dlls for this PR, here is the result. For #11456, One behavior needs to be confirmed. Narrator still can't announce “Generating Previews”, NVDA announce it correctly, and isDialog and AccessibleName properties are correct. For #12358, all HDPI issues have been fixed and there are no new regressions. |
Please investigate how to override AccessibleRole and ControlType for the new object |
When we focus on |
@@ -142,6 +142,8 @@ private Color IEDisabledLinkColor | |||
} | |||
} | |||
|
|||
internal virtual AccessibleRole LinkAccessibleRole => AccessibleRole.Link; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we set the Control.AccessibleRole property instead?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think we can.
JAWS announce “Page 1 of document” with the suffix changed from text to link, it announce “page 1 of document link”
The real problem here is in Link, not in LinkLabel.
It seems impossible to change Link.AccessibleRole from outside. So I changed our code to let Link.AccessibleRole rely on LinkLabel so that I can customize Link.AccessibleRole.
|
||
public partial class PrintControllerWithStatusDialog | ||
{ | ||
private class FocusableLabel : LinkLabel |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Note for the future - we might have other instances of dialogs where we need a focusable label, we'll "un-nest" this class if needed.
Fixes #12358
Proposed changes
Regression?
Risk
Screenshots
Before
After
Test methodology
Microsoft Reviewers: Open in CodeFlow