nvaccess / nvda

NVDA, the free and open source Screen Reader for Microsoft Windows
https://www.nvaccess.org/
Other
2.11k stars 637 forks source link

addon store: Don't reset filters when switching tabs #15947

Open Adriani90 opened 11 months ago

Adriani90 commented 11 months ago

Steps to reproduce:

  1. Open the NVDA addon store
  2. Navigate with tab or shift+tab through the dialog until you land on aany of the filter combo boxes (i.e. channel combo box) and change the value with arrow keys (i.e. from stable to all, or from all to stable)
  3. Switch the tab and return back to the previous tab
  4. Check if the filter you set before is still applied in the combo box of the respective tab

Actual behavior:

The filter value is reset to the default value, and the user has to adjust the filter every time when switching tabs back and forth which is very inefficient. It is also inconsistent since i.e. the check box "include incompatible addons" maintains its state even when switching tabs.

Expected behavior:

Users have something in mind when applying these filters, most of the time they are set for a longer period of time, not only for the time when the tab is focused. This is too educative. The filters should remain applied according to users action until the addon store is closed, same as it works with the checkbox for including incompatible addons.

NVDA logs, crash dumps and other attachments:

n/a

System configuration

NVDA installed/portable/running from source:

Installed

NVDA version:

alpha-30354,72e65dbd (2024.2.0.30354)

Windows version:

Windows 11 23 h2

Name and version of other software in use when reproducing the issue:

n/a

Other information about your system:

n/a

Other questions

Does the issue still occur after restarting your computer?

yes

Have you tried any other versions of NVDA? If so, please report their behaviors.

2023.3 has the same behavior.

If NVDA add-ons are disabled, is your problem still occurring?

yes

Does the issue still occur after you run the COM Registration Fixing Tool in NVDA's tools menu?

yes

seanbudd commented 10 months ago

The oppose of this behaviour was initially requested, leading to the current UX. I think more feedback is required before changing this, as the original sentiment was to always reset filters when changing tabs

Adriani90 commented 10 months ago

@seanbudd what were the arguments for this approach? I don't see any logical arguments other than educating the user in a very strict way to always use a pre defined filter when switching tabs which is too restrictive in my view.

@nvdaes, @abdel792, @CyrilleB79, @XLTechie I think you guys were very much involved in the UX design of the addon store. Could you please elaborate on why this filter reset has been requested at all?

CyrilleB79 commented 10 months ago

In the initial prototype, the filters were not changed when switching tab. It was not desirable since the values of the filters for one tab may not suitable for another one. E.g: you may usually install stable versions, except for one add-on that you are testing for which you want to install beta versions. In the installed add-ons tab, you wish to see all installed add-ons, thus selecting channel=all. When installing new add-ons however, you want to look only at stable versions, thus in available add-ons tab, you prefer have channel=stable selected. Thus, I think that each tab having a specific default value for filters is a good idea and must be kept.

However, what is frustrating is when you change the filters for one tab and control+tab forth and back to this tab. In this case, you do not expect the filters to be reset to default value but to the values you have previously set. For example: you go to updatable add-ons tab. You select channel=all to see all available updates. Then you control+tab to another tab and control+shift+tab back to updatable add-ons. It would be nice to have channel=all, whereas it is reset to channel=stable.

To summarize, the filter controls should have a value specific to the tab, not one same value in all tabs.

And to go further, the channel combo-box of updatable add-ons tab is very suboptimal. Instead of selecting between all/stable/beta/dev, we should be able to select between:

But, even if related, I should probably write a specific issue for this; what do you think?