Add new commands for synth ring#16095
Conversation
See test results for failed build of commit 59ea297e82 |
See test results for failed build of commit 582669b4d5 |
|
Are these gestures really necessary? In the original feature request @TheQuinbox wrote:
Can there be an example or two of this? Some of my concerns: If the user accidentally sets the speech rate to the maximum value, it may be difficult to restore without knowing these gestures. We can hardly assume that the user knows nvda+ctrl+r. There are no such worries in the voice settings dialog, because it is real-time interaction and contextual. |
See test results for failed build of commit 8a570b62bf |
Hi, |
|
IMO, these gestures are not very useful because no one use the min and max values of almost all parameters. What would be much more useful would be to have long step commands, e.g. move 20 by 20, or determine the step according to the number of available values. Would be much more useful for numeric parameters, but also for long lists such as eSpeak Voices (languages). Also, gestures allowing to keep the hand on the arrow pad would be better than the use of home/end. What about NVDA+control+windows+up/downArrow (desktop keyboard) and NVDA+shift+control+windows+up/downArrow (laptop)? These gestures may seem a bit complex but they can be reassigned for people having difficulties using gestures with many modifiers. |
Hi @CyrilleB79 |
|
Sorry, I had read the description too quickly. I think that the commands to jump to first or last value should not be assigned any gesture because I think that only few people will use them. Regarding the long jump, a step of 4x is nice for values which vary between 0 and 100. For long lists such as eSpeak voices, 4x = 4 items in a list of many items is a too short step: there are 133 voices for eSpeak and 105 variants. In this case, long steps should allow to go through the whole list pressing 5 to 8 times the long step gesture. |
Thanks again, good suggestion! In fact, I think it is the right thing to do to prevent certain incidents from occurring with a beginner user. |
See test results for failed build of commit ed195b118d |
See test results for failed build of commit b71f7b64b2 |
|
Hi, The latest failure in system tests appears to be independent of these new features. |
Co-authored-by: Sean Budd <seanbudd123@gmail.com>
See test results for failed build of commit c2459a0849 |
See test results for failed build of commit d49a6f5450 |
|
Hi, |
seanbudd
left a comment
There was a problem hiding this comment.
Thanks, this is almost ready
Improved type hints. Co-authored-by: Sean Budd <seanbudd123@gmail.com>
| import queueHandler | ||
| from autoSettingsUtils.driverSetting import BooleanDriverSetting, NumericDriverSetting | ||
|
|
||
|
|
There was a problem hiding this comment.
can you please restore this new line? otherwise this is ready to go
|
Congratulations on this PR being merged, please update the description of the original PR to be consistent with the actual changes. This helps translators or people interested in this PR review it in the future.
These two commands are not actually assigned, but the functionality is there. |
Hi @cary-rowen, |
Fixes nvaccess#13768 It's very related to this issue, since it adds these same suggested commands in it for easier navigation in certain cases. Summary of the issue: More efficient navigation in the synth settings ring by adding new commands for it. Description of user facing changes Added scripts: CTRL+shift+NVDA+home (laptop) and CTRL+NVDA+home (desktop) to set the current value to the first one. CTRL+shift+NVDA+page up (laptop) and CTRL+NVDA+page up (desktop) to jump forward the current value by 4x. CTRL+shift+NVDA+page down (laptop) and CTRL+NVDA+page down (desktop) to jump backward the current value by 4x. CTRL+shift+NVDA+end (laptop) and CTRL+NVDA+end (desktop) to set the current value to the last one. Description of development approach In the synth ring, the first and last functions, as increase or decrease by 4x defs as well, (which handles self.min and self.max) were added to both the numeric ring and the global ring, in their respective classes. I consider this approach to be better, because by jumping in this way, focusing on the minimum and maximum values, it can respect the settings of other synth drivers and thus not cause problems with them.
Fixes nvaccess#13768 It's very related to this issue, since it adds these same suggested commands in it for easier navigation in certain cases. Summary of the issue: More efficient navigation in the synth settings ring by adding new commands for it. Description of user facing changes Added scripts: CTRL+shift+NVDA+home (laptop) and CTRL+NVDA+home (desktop) to set the current value to the first one. CTRL+shift+NVDA+page up (laptop) and CTRL+NVDA+page up (desktop) to jump forward the current value by 4x. CTRL+shift+NVDA+page down (laptop) and CTRL+NVDA+page down (desktop) to jump backward the current value by 4x. CTRL+shift+NVDA+end (laptop) and CTRL+NVDA+end (desktop) to set the current value to the last one. Description of development approach In the synth ring, the first and last functions, as increase or decrease by 4x defs as well, (which handles self.min and self.max) were added to both the numeric ring and the global ring, in their respective classes. I consider this approach to be better, because by jumping in this way, focusing on the minimum and maximum values, it can respect the settings of other synth drivers and thus not cause problems with them.
|
Hi. In the user guide, I notice it says: |
Hi @fisher729. |
|
@fisher729 - this PR was closed 4 months ago. If you'd like to propose user guide changes for 2024.3 please open a new issue/PR |
Just to be clear, while @fisher729 is correct on the grammar of this sentence, this text was in the what's new / changes file, not the user guide. From memory, I saw it, but as my approval was the last step required to approve the PR, I didn't make an issue of fixing it in the changes file. If it had been in the user guide I would have flagged it. For reference, in the User Guide, it states: "It is also possible to set the first or last value of the current synth setting by assign custom gestures in Input Gestures dialog, under the speech category. This means, for example, when you're on a rate setting, it will set the rate to 0 or 100. When you're on a voice setting, it will set the first or last voice." https://www.nvaccess.org/files/nvda/documentation/userGuide.html#TheSynthSettingsRing So, @rmcpantoja always worth learning, especially on a language as complex as English can be - but no further changes required on this PR, great work! 😀👍 |
Link to issue number:
Fixes #13768
It's very related to this issue, since it adds these same suggested commands in it for easier navigation in certain cases.
Summary of the issue:
More efficient navigation in the synth settings ring by adding new commands for it.
Description of user facing changes
Added scripts:
Description of development approach
In the synth ring, the first and last functions, as increase or decrease by 4x defs as well, (which handles self.min and self.max) were added to both the numeric ring and the global ring, in their respective classes. I consider this approach to be better, because by jumping in this way, focusing on the minimum and maximum values, it can respect the settings of other synth drivers and thus not cause problems with them.
Testing strategy:
Known issues with pull request:
None
Code Review Checklist: