-
-
Notifications
You must be signed in to change notification settings - Fork 637
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
Windows 10 Action Center: Brightness percentage not reported for brightness quick action #8845
Comments
Hi, Note that this is also applicable to Focus Assist toggle state changes. Technical: one way to implement this is through a combination of runtime object property coercion (event_NVDAObject_init) and state change events. I'll introduce a proof of concept implementation in Windows 10 App Essentials in the next 30 minutes. Thanks. |
Hi, I may have been too enthusiastic about this... This work may take a while - at least managed to let NVDA announce item status via state change, but will need to investigate why it is announcing the previous state sometimes. Thanks. |
Hi, Technical: we need to tell NVDA to listen to item status property event from now on, as it can be used for brightness and other quick action toggle announcements. Pull request to be sent in the next few days. Thanks. |
Some controls raise UIA item status property change event, allowing clients to announce status changes. This is most noticeable in Windows 10's Action Center where one can change brightness and Focus Assist (quiet hours) where toggling these controls will cause them to raise this event.
…ter controls. Re nvaccess#8845. Thanks to UIA's item status property change event, status for the following will be announced when toggling them: * Brightness * Focus Assist/quiet hours Because item status property change is raised multiple times (or rather, NVDA announces status messages multiple times), have a string to hold last announced status.
… toggle button. Re nvaccess#8845. Brightness button is now a plain button, not a toggle button. Note that this control is now a slider in Windows 10 19H1 build 18277 and later.
Comment: make it more professional. _itemStatusMessage -> _itemStatusMessageCache for readability.
Reviewed by Mick Curran (NV Access): tweaks and changes: * An overlay class will be used to handle toggle button value change state. * Current item status cache will now be part of the new toggle button overlay class.
…ache no matter what the new value is. Re nvaccess#8845.
…s, focus assist and others, as well as reclassify brightness control as a button (#8954) * UIA handler: add item status property change event. Re #8845. Some controls raise UIA item status property change event, allowing clients to announce status changes. This is most noticeable in Windows 10's Action Center where one can change brightness and Focus Assist (quiet hours) where toggling these controls will cause them to raise this event. * App modules/Shell Experience Host: copyright header edits, add top-level docstring. * Shell Experience Host: announce status changes for various Action Center controls. Re #8845. Thanks to UIA's item status property change event, status for the following will be announced when toggling them: * Brightness * Focus Assist/quiet hours Because item status property change is raised multiple times (or rather, NVDA announces status messages multiple times), have a string to hold last announced status. * Shell Experience Host: Brightness button is now a plain button, not a toggle button. Re #8845. Brightness button is now a plain button, not a toggle button. Note that this control is now a slider in Windows 10 19H1 build 18277 and later. * Shell Experience Host/item status: clarify comment. * UIA item status: address review comments. Re #8845. Comment: make it more professional. _itemStatusMessage -> _itemStatusMessageCache for readability. * Update copyright years * Action Center/toggle button: address review comments. Re #8845. Reviewed by Mick Curran (NV Access): tweaks and changes: * An overlay class will be used to handle toggle button value change state. * Current item status cache will now be part of the new toggle button overlay class. * Action Center toggle button object: address review comment - assign cache no matter what the new value is. Re #8845. * Update what's new.
Steps to reproduce:
System configuration:
NVDA Installed/portable/running from source:
Installed.
NVDA version:
alpha-16157,526d6fca
Windows version:
Version 1809 (OS Build 17763.55)
Additional info:
Even though Windows reports this as a toggle button, it isn't. The toggle state is always off. Narrator behaves as such too.
The percentage is exposed via the ItemStatus UIA property. IMO, this is inda weird, but at least it's exposed.
Because of the weirdness of this control, I'd suggest that rather than generically supporting ItemStatus as value for toggle buttons, we should just do it for this control (or at least this app). If we do it specifically for this control, we could also map it to button instead of toggle button, which is probably less confusing.
Relevant dev info for the control:
The text was updated successfully, but these errors were encountered: