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

Consider changing or unbinding default application volume adjustment gestures #17272

Closed
codeofdusk opened this issue Oct 9, 2024 · 21 comments · Fixed by #17634
Closed

Consider changing or unbinding default application volume adjustment gestures #17272

codeofdusk opened this issue Oct 9, 2024 · 21 comments · Fixed by #17634
Labels
p4 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority triaged Has been triaged, issue is waiting for implementation.
Milestone

Comments

@codeofdusk
Copy link
Contributor

The default gestures (NVDA+Alt+Pgup/Pgdn) for the application volume adjustment feature conflict with the popular NVDA Remote add-on. Especially since the feature is off by default, it might be worth leaving these gestures unbound.

Probably blocking #4390.

CC @mltony.

@CyrilleB79
Copy link
Collaborator

I am not a user of NVDA remote. Could you explain what do NVDA+alt+pageUp/pageDown in this add-on.

Generally, NVDA gestures take priority and add-ons need to adapt.

In the specific case of NVDA remote though, NV Access may consider that NVDA remote is quite popular and may put an option on some gestures if they intend to integrate it in core.

On the other side, I expect the other app volume commands to become a popular feature too. I was advocating for it to be enabled by default; though it has been decided the other way around to avoid potential issue with other external audio processing. Also, using gestures including pgUp/pgDown or arrows for volume commands is something quite natural and easy to remember for a volume.

If NV Access agrees to change the other app volume gestures, I'd ask at least that:

  • some other default gestures be defined, i.e. do not just unbound these gestures
  • the gestures be as suitable as the ones they are replacing for volume commands, i.e. using arrows or pgUp/pgDown as main key. I'd even prefer to stick with pgUp/pgDown, because of the third command to mute other apps using delete, which is in the same block as pgUp/pgDown.

In case NV Access accepts / wants to change these gestures, have you a proposal?

Could we use shift+alt+pgUp/pgDown as a replacement? As well as alt+shift+delete for "mute other apps"?

@Develook1991

This comment was marked as spam.

1 similar comment
@Develook1991

This comment was marked as spam.

@Adriani90
Copy link
Collaborator

The alt+shift gestures would be in conflict with some other third party software. I don‘t think we should change the current gestures. Addons have to adapt in this case. Have you written to the addon authors?
I am closing as wont fix. This is what we did in similar cases before.

@Adriani90 Adriani90 closed this as not planned Won't fix, can't repro, duplicate, stale Oct 10, 2024
@XLTechie
Copy link
Collaborator

XLTechie commented Oct 10, 2024 via email

@CyrilleB79
Copy link
Collaborator

As @XLTechie, I'd like to hear NV Access opinion, given the specificity of the current issue, i.e. because of the potential future inclusion of NVDA Remote in core.

So let's reopen until NV Access has clarified this point.

Regarding alternative gestures, you are completely right mentioning potential conflicts with native application shortcuts.
As a new alternative I'd rather suggest

  • NVDA+alt+shift+pgUp/pgDown/delete: better than no gesture at all, even if a 4-key gesture is less comfortable than a 3-key one.
  • Or NVDA+windows+pgUp/pgDown/delete: using Windows key would be quite relevant in this case since we deal with sound config outside NVDA.

Note that even if I give some alternative suggestions, I am not sure at all that changing these gestures is a good idea at all.

From what I have seen in the add-on, the conflicting gestures in NVDA remote are used to open a dialog to start a new remote connection or close a connection. These actions are also provided in NVDA's menu by the add-on.

IMO, it's more useful to be able to control the other apps volume quickly, thus having a shortcut, rather than opening a dialog to connect remotely or to quickly end a remote connection given the availability of such actions in NVDA's menu.

@codeofdusk
Copy link
Contributor Author

codeofdusk commented Oct 14, 2024

Given that:

  • Multiple default gestures are proposed
  • This feature is disabled by default
  • This feature will probably only be used by advanced users or in specialized use cases where standard audio ducking is insufficient

I propose that:

  • We remove default gesture bindings for this feature
  • In place of an option in settings, we enable volume adjustment if one or more of the volume-related scripts have bindings
    • This can be checked in a helper method in audio.appsVolume where needed (i.e. in initialize/terminate)
    • For each script, if volume handling isn't initialized yet (because a gesture was set during this run of NVDA), call initialize when needed.

@Adriani90
Copy link
Collaborator

Adriani90 commented Oct 14, 2024 via email

@CyrilleB79
Copy link
Collaborator

@codeofdusk wrote:

This feature will probably only be used by advanced users or in specialized use cases where standard audio ducking is insufficient

This is a wrong assumption:

  • There is already a lot of people that use such feature through add-on
  • The case where audio ducking is insufficient is quite common: just go to Youtube and listen to the ad sound/volume that covers NVDA's speaking

Thus I strongly disagree with unbounding app volume adjustment commands.

Thus for best UX, either NVDA remote or app volume adjustment commands should be modified.

Regarding frequency of use:

  • It seems to me that using such app volume/mute command is a much more common use case than NVDA remote's one
  • For users of both NVDA remote and volume/mute commands of other apps, I expect the volume/mute command to be used more frequently than connect/disconnect.

If app volume/mute adjustment commands had to be changed, as expressed before, I'd ask that pgUp/pgDown/mute be still used. E.g. NVDA+windows+pgUp/pgDown/delete.

@XLTechie
Copy link
Collaborator

XLTechie commented Oct 15, 2024 via email

@amirsol81
Copy link

I vote against removing or altering the assigned volume-related key strokes. They are quite useful, and add-on owners should alter their key strokes when a set key stroke gets incorporated into NVDA core.

@CyrilleB79
Copy link
Collaborator

@seanbudd or @SaschaCowley would NV Access like to give their opinion on this?

If the issue should just be closed (my personal opinion), please confirm this / close it. If the issue is considered valid, it would be worth adding it in 2025.1.

@codeofdusk
Copy link
Contributor Author

Also CC @michaelDCurran

@seanbudd
Copy link
Member

We are in favour of unbinding these gestures

@seanbudd seanbudd added this to the 2025.1 milestone Oct 21, 2024
@seanbudd seanbudd added p4 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority triaged Has been triaged, issue is waiting for implementation. labels Oct 21, 2024
@Adriani90
Copy link
Collaborator

Adriani90 commented Oct 22, 2024 via email

@XLTechie
Copy link
Collaborator

XLTechie commented Oct 22, 2024 via email

@ChrisDuffley
Copy link

@Adriani90: @XLTechie is right:

Of course it is. They can be easily re-bound by anyone who wants them.

Totally agree with everything you said. I personally changed the Connect/Disconnect gestures anyway, so these would work perfectly for me. I'm also not against NV Access's decision of unbinding these.

@Adriani90
Copy link
Collaborator

Adriani90 commented Oct 22, 2024 via email

@CyrilleB79
Copy link
Collaborator

We are in favour of unbinding these gestures

@seanbudd, I am a bit surprised with this decision. Could you be more specific? There have been many arguments in this thread in favor of keeping these gestures (or defining other ones) and the support of the majority of the user to have these gestures. Have you read all the messages? I can make a summary later today with pros and cons if needed.

@Adriani90
Copy link
Collaborator

In fact, whether unbinding a gesture or not should be decided during a PR review, or shortly after merging. This feature is in the core for a while now, and the discussion loop was really long during the PR review. No one brought this issue at that time.

@codeofdusk
Copy link
Contributor Author

Given that #17335 was rejected and the "enabled/disabled" setting should stand, I think it makes sense to consider new default bindings for these gestures.

@SaschaCowley SaschaCowley linked a pull request Jan 21, 2025 that will close this issue
5 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
p4 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority triaged Has been triaged, issue is waiting for implementation.
Projects
None yet
8 participants