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

Add-Ons Manager - When restarting with add-ons disabled, make it possible to selectively re-enable #13084

Closed
britechguy opened this issue Nov 22, 2021 · 5 comments
Labels
Addon/management In NVDA management of addons by users. close/worksforme
Milestone

Comments

@britechguy
Copy link

Is your feature request related to a problem? Please describe.

In virtually all cases, if someone is restarting NVDA with add-ons disabled, it is to debug an suspected issue with NVDA or one of its add-ons. This request could potentially be tied in with feature request #11538 as they are closely related. Right now, when you start with add-ons disabled and go into add-on manager, there is a banner message stating that all add-ons are disabled, but the actual add-on list itself shows up as it always does, with the enabled items enabled.
To me, it would make much more sense for add-ons manager to have that banner message, but show all add-ons as disabled, and allow you to go in and re-enable them either singly or "in chunks" in order to try to narrow down what add-on is being problematic. Very often, you just want to re-enable a single add-on to see if it's working just fine on its own when it's not been when all other add-ons are running as well. Then you would often like to continue re-enabling add-ons, whether one-by-one or in small groupings, to see what triggers a problem to recur.

Describe the solution you'd like

I'd like to see add-ons manager allow you to selectively re-enable add-ons once NVDA has been restarted with all add-ons disabled. If re-enabling requires a restart, then the state of which were disabled versus which were enabled or re-enabled between successive restarts should be retained. This might require the creation of an Exit option for restarting with all add-ons re-enabled if you've been using the restart with add-ons disabled feature if selective re-enabling were to be supported.

Describe alternatives you've considered

None, specifically. This is a functionality that would either be there or not. I do not know what barriers there may be to making this change.

Additional context

Having this ability would be somewhat akin to a Windows Clean Boot process, but focused only on NVDA add-ons, and making it much easier to keep bringing selected add-ons back into the picture after all have been disabled without having to go into Add-ons manager, manually disable all add-ons, then manually re-enabling all of them once troubleshooting is over. An option to restart with all add-ons re-enabled would complement the option to restart with all add-ons disabled. Users would have to be educated that restarting with all add-ons disabled means that this would ultimately require them to use the restart with all add-ons re-enabled in order to support selective re-enabling after an initial all-disabled state. It might also require a change to the wording for the all add-ons disabled option to get rid of the "all," with the understanding that initially, it is all, but if restarts are involved after selective re-enabling it would be partial, not total.

@britechguy britechguy changed the title Add-Ons Manager - When starting with add-ons disabled, make it possible to selectively re-enable Add-Ons Manager - When restarting with add-ons disabled, make it possible to selectively re-enable Nov 22, 2021
@ehollig ehollig added the Addon/management In NVDA management of addons by users. label Nov 11, 2022
@CyrilleB79
Copy link
Collaborator

This feature is definitely a very needed one.

In the initial description however, I feel that forcing the user to restart with all add-on re-enabled may not be desirable, due to the risk that the user forgets this step.

Also, I have difficulty imagining a good UX (User eXperience) to integrate this in NVDA's GUI. The UX described in the initial description does not take into account that some add-ons may be disabled for other reasons:

  • because enabling the add-on enables the feature and because we do not want the feature to be always enabled, e.g. EventTracker used only when debugging
  • because an add-on may be causing issues and should be enabled just when needed. E.g. this was the case for Tony's enhancements causing a bug in my daily usage of NVDA (do not remember which one), but useful when a table needed to be copied from a webpage

Ideally, there would be two type of add-on disabling:

  • disabled during normal usage of NVDA (example EventTracker): this add-on may only be re-enabled manually in the add-on store
  • disabled temporarily only, for test purpose: this would be re-enabled manually in the store or when a normal restart occurs

I have difficulty to figure a good UX in NVDA's GUI to support that level of details without being extremely complicated. Maybe some people have other ideas? (cc @XLTechie?)

At last, as discussed in this thread, I would also appreciate command line options to only enable one add-on or a subset of the add-ons. E.g.:

  • Disable all add-ons but one:
    nvda --disable-addons -enable-addon=outlookExtended
  • Disable half of the 20 add-ons (useful to identify by dichotomy an add-on causing issues):
    nvda --disable-addons --enable-addon-index=1-10

Cc @bhavyashah

@CyrilleB79
Copy link
Collaborator

With multiple selection now allowed in the add-on store, enabling/disabling of multiple add-ons for debugging purpose has become much easier, e.g.: disable all but one add-on, enable only half of them, etc.

@britechguy with the experience of multiple selection in the Add-on Store (NVDA 2024.1 or higher), is this issue still relevant. If yes, could you describe what remains to do here? Or maybe better, close this issue and open a brand new one with a suitable initial description based on today's Add-on Store.
Thanks.

@britechguy
Copy link
Author

@CyrilleB79

I am behind schedule on a lot of things as I was out of town for the total solar eclipse last week. My suspicion is that this issue may be active, still, but I will definitely test to see if I can re-enable one-by-one or in chunks after restarting with add-ons disabled.

I suspect I will not, as when you enable or disable an add-on, when you close the add-on store dialog you are prompted that you must restart NVDA for the changes to take effect. What I think I'll see happen is the re-enabling of one or a couple of add-ons will not be possible, as the restart is an all or nothing affair with add-ons enabled (which would use the former state of all of them).

The main reason being able to turn add-ons on or off singlely, or in chunks, is for debugging purposes.

@CyrilleB79
Copy link
Collaborator

OK @britechguy. Let us know when you have tested if you find the user experience convincing. If not, let us know what is missing.

It's worth noting that now, if you want to enable/disable add-ons half by half and so on, you do not need to restart with add-ons disabled: you just need to disable the add-ons you want to directly in the add-on store. Since multiple selection is now available in the store, this action becomes much more easy.

I'd say that restarting with add-ons disabled is still needed when an add-on causes NVDA to be unworkable; this way, you can restart with add-ons disabled and disable individually the culprit add-on.

@Adriani90
Copy link
Collaborator

The UX is now much better, and the solution requested by Brian is unfortuantely not possible. nvDA needs the restart when enabling or disabling an add-on, so if you restart with add-ons disabled and enable a single add-on, you need to restart which in tunr brings you back to the state before restarting with all add-ons disabled.
You can now bulk disable add-ons permanently, and then you can enable add-ons one by one to see where an issue could come from.

Closing as works for me.

@github-actions github-actions bot added this to the 2025.1 milestone Nov 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Addon/management In NVDA management of addons by users. close/worksforme
Projects
None yet
Development

No branches or pull requests

4 participants