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
extensionPoints: Notify when NVDA is in browse mode #14969
Comments
It would have to also include an Action to notify when NVDA is in focus mode in
order to be effective.
Possibly should include a globalVar for isInBrowseMode, so this can be
determined dynamically without an extPoint being triggered.
|
I think that globalVars maybe deprecated in future. In addition, not just focus mode, but also when an object doesn't have a tree interceptor should be addressed. |
Since this has been triaged, I may start working on this. For the primary purpose of this issue, notifying about changes in review.getReviewMode maybe appropriate. |
But thinking more, imo a good approach maybe to add an
extensionPoints.Action() to notify the state of the _set_passThrough
method in the treeInterceptorHandler.TreeInterceptor class, notifying
the state, and notifying False in api.getFocusObject function if focus
doesn't have a tree interceptor.
This action maybe called postBrowseModeSwitch.
I'll test this approach. Additionally, a preBrowseModeSwitch maybe added
to allow add-ons, for example, to decide if changes should be reported
playing a sound, but I don't have a real use case for the pre action.
El 13/09/2023 a las 13:38, Noelia Ruiz Martínez escribió:
… Since this has been triaged, I may start working on this. For the primary purpose of this issue, notifying about changes in review.getReviewMode maybe appropriate.
|
…r inactive (#15450) fixes #14969 Summary of the issue: Sometimes, it would be desirable perform actions when browse mode state changes. For example, this may be useful to activate or deactivate a profile when entering or exiting browse mode. Description of user facing changes Add-ons and other components can be notified about browse mode state changes. Description of development approach A treeInterceptorHandler.post_browseModeStateChange extension point has been added. The browseMode parameter represents the state of browse mode (True or False).
to allow add-ons, for example, to decide if changes should be reported Maybe an addon could use this to prevent switching to browse mode, for example in an Electron app, where (initially) the browse mode would make the app unusable. I'm thinking in VSCode, but certainly it uses browse mode for previewing markdown as HTML, but maybe other apps would benefit from this. |
@ramoncorominas commented
I don't know if this use case is valid, since profiles associated to apps may prevent switching to browse mode when the webpage is loaded. You may want to open a new issue to see if this proposal is accepted. |
@nvdaes commented:
Sorry, it was not my intention to make a proposal, I was just trying to imagine a possible use case for preBrowseModeSwitch . I assume that not every Electron app would load a webpage somewhere, so I guess in those cases preventing browse mode would not harm. |
Is your feature request related to a problem? Please describe.
Add-ons may need to be notified when NVDA is in browse mode, for example to activate and deactivate profiles when entering and exiting browse mode, respectively.
Describe the solution you'd like
Add extensionPoints to notify when NVDA is in browse modeor not (i.e., in focus mode or not in a treeInterceptor).
Describe alternatives you've considered
Adda profile trigger for browse mode, which may take priority over the profile application trigger.
Additional context
Sometimes maybe useful to change voice settings to read in browse mode. This has been requested by a member of the spanish community on a Telegram group.
The text was updated successfully, but these errors were encountered: