Replies: 18 comments
-
cc: @CyrilleB79, @XLTechie, @mltony, @Simon818, @rperez030, @pitermach, @TechHorseG, @Neurrone among people who would like this flexibility of deciding when global parameters and profileName.ini parameters are used. |
Beta Was this translation helpful? Give feedback.
-
@Adriani90, Regarding your example with Firefox and speech rate. One more feature I wish could be included is to clear Firefox-specific speech rate and make it follow global speech rate once again without deleting Firefox profile. |
Beta Was this translation helpful? Give feedback.
-
There are two requests here:
When following global configuration which would ofcourse work only on unlocked profiles, the settings changes on the global config would also be reflected in the Firefox profile ini file. |
Beta Was this translation helpful? Give feedback.
-
Note: if the decision is to have context menu on profile items, I would still vote for the checkable list of lock / unlock profiles for efficiency reasons. It would be a mess to open the context menu on every of the 30 profiles to unlock them. |
Beta Was this translation helpful? Give feedback.
-
@Adriani90 would that not essentially be the same as deleting the profile and starting again? If we don't tell NVDA which settings you want to follow the normal configuration, then that option would essentially be telling it to reset the configuration to the normal configuration. Personally, though more complex, I think the VO (and from memory Orca) solution of selecting categories to include in profiles makes the most sense. If a category is selected to be included, the any configuration from the profile in that category is used, otherwise the normal config values are used. If a category is excluded, the normal config is used. |
Beta Was this translation helpful? Give feedback.
-
Not really, deleting a profile means you start really from scratch. Following the global configuration would practically happen only on a temporary basis, when you want to change just some settings but you don't want to focus three different applications.
To me this sounds too general and doesn't really meet users expectations which we saw in different issues related to profiles. Adding a whole category to a profile is far too much. Users need more flexibility to adjust single settings on a profile basis or on a global basis, and this should ideally happen on the fly, not being tied to a whole included or excluded category. Whereas the proposed UX would allow for a very quick lock / unlock feature and this allows more flexibility, especially when doing it via a key stroke. |
Beta Was this translation helpful? Give feedback.
-
@Adriani90 how does your proposal address your point 2 "Firefox profile speech rate follows global speech rate"? I.e. how does the user tell NVDA that they want to delete speech rate from their firefox configuration permanently? |
Beta Was this translation helpful? Give feedback.
-
Converted to a discussion until a more clear UX is resolved |
Beta Was this translation helpful? Give feedback.
-
My suggestion for this (which I still believe to be the simplest):
Here are some other proposals and why I don't think they'll work as well:
|
Beta Was this translation helpful? Give feedback.
-
@SaschaCowley wrote:
Profile speech rate follows global config speech rate should not allow for deleting the speech rate from profile ini file, this is indeed not possible on global config as well unless you delete the ini file as you pointed out. But @mltony doesn't really want to delete the speech rate from the profile ini file, he does it because there is no other way to resume speech rate. Resuming speech rate is covered by point 1 above (temporary speech rate setting as proposed in #16431). Point 2 is another request and is actually tackling rather other problems but not particulary the one about resuming speech rate. @Simon818 thanks for your feedback, let's try to avoide repeating what is already described and discuss on point what we agree on or what we don't agree on. You wrote:
I proposed profiles to be locked by default given our experience in the community that people more often change settings on a global basis tahn on a profile basis. And this was also what was agreed on in #10156. I still think this would make sense.
That's what I described in the initial description.
I don't really agree with this, because the settings would then restore everytime you leave the window with alt+tab and that would rather cause confusions. I think saving them in the global config instead is a better option and according to my understanding was also agreed upon in #10156.
This would cause the problem of settings being resumed to easily. While this makes sense for speech rate as explained in #16431, other settings should not be resumed that quick when changing windows with alt+tab or so (e.g. changing audio output). That's why the only way is to save them into the global config when the profile is locked.
That's what I've also described in the initial description above.
That's what has been agreed on in #10156 for the profile ini file.
Not really, they are then saved to the global config.
You would have to think about it too when you add whole categories to the profile, and the UX would get more complex and not really manageable. What you say is already possible with the lock feature. When you decide there were enough settings changed for that profile, you just lock it. That's what was agreed on in #10156.
What do you mean by smaller scale? Actually the categories proposal is on a bigger scale, and then the profile ini file is always leaked with categories where you might never change a setting on a profile basis.
Exactly that's why leaking profile ini files with whole categories is inefficient.
I don't understand this part. If I have 5 settings which I change on the unlocked profile ini file, why are they 5 times leaked in there? The proposal is to ad the coresponding settings parameters once to the unlocked profile when I change them on that profile for the first time. Their values are then adjusted accordingly when I change them on the unlocked profile afterwards.
So it seems you are not keen on adding whole categories to the profile ini file in the end. These confusions is what I was trying to explain above as well. If you add the whole category to a profile, such things can occur very often. |
Beta Was this translation helpful? Give feedback.
-
@SaschaCowley what is the purpose of deleting a settings parameter permanently from a profile ini file? If If that's done, then the global setting parameter would apply. This would also be the same when I choose "follow global profile" from the context menu of a profile, and change e.g. the speech rate on the global config afterwards. In that moment, the speech rate in the profile ini file would change, and I am still flexible enough to unfollow the global config and adjust the speech rate separately on a profile basis, that's the advantage of it. |
Beta Was this translation helpful? Give feedback.
-
@Adriani90 Respectfully, I do not find this to be an accurate summary of the community conclusion in #10156.
Several difficulties exist with the value lock idea, as adequately stated by others in that issue (especially #10156 (comment)), that make the parameter lock be the preferred (and more user friendly), solution. That is my reading of the issue--no locked profile list, and the statement of "there is nothing else written to the profileName.ini, but to the global configuration" is not representative of either of the main solutions discussed. Lastly, having profiles be locked at creation by default was never raised in the issue that I noticed, so shouldn't be part of the summarized solution. Nobody asked for that, and it seems contrary to the reason someone creates a profile. The concern raised by @mltony is of course valid, but seems outside the scope of this issue. Issue drift is a big problem on this topic, because there are a lot of tangential problems associated with profiles. But IMO, that one should be its own issue. |
Beta Was this translation helpful? Give feedback.
-
Ok in this case the discussion seems to get stuck. I tried to summarize and interpret the points agreed on in principle, so that the underlying problems are solved in a user friendly way. It seems you rather expect a 100% summary of the old discussion. Please proceed with your version then, because this one is again blown up already and the arguments you raised are not really bringing this forward in a constructive way.Von meinem iPhone gesendetAm 20.11.2024 um 12:45 schrieb Luke Davis ***@***.***>:
@Adriani90 Respectfully, I do not find this to be an accurate summary of the community conclusion in #10156.
At no point, was it proposed to have a list of locked/unlocked profiles. It was universally stated that each profile, when chosen as active, should have a lock/unlock button.
There were two primary alternatives discussed in the latter half of the issue: a parameter lock, vs. a value lock.
* In a value lock, as proposed by @CyrilleB79, after a user edits some parameters (e.g. speech rate, announce line numbers, synth selection), and locks the profile, no new parameters could be added to the profile, and no changes to the values of those parameters could be made.
* In a parameter lock, as proposed by @Simon818, when locked, the values of already included parameters could still be changed, but no new parameters could be added.
Several difficulties exist with the value lock idea, as adequately stated by others in that issue (especially #10156 (comment)), that make the parameter lock be the preferred (and more user friendly), solution.
That is my reading of the issue--no locked profile list, and the statement of "there is nothing else written to the profileName.ini, but to the global configuration" is not representative of either of the main solutions discussed.
In the value lock idea, other value changes to parameters already in the profile, would have to remain unsaved. In the parameter lock idea, they would be written to the profile.
Lastly, having profiles be locked at creation by default was never raised in the issue that I noticed, so shouldn't be part of the summarized solution. Nobody asked for that, and it seems contrary to the reason someone creates a profile.
The concern raised by @mltony is of course valid, but seems outside the scope of this issue. Issue drift is a big problem on this topic, because there are a lot of tangential problems associated with profiles. But IMO, that one should be its own issue.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: ***@***.***>
|
Beta Was this translation helpful? Give feedback.
-
By the way, whether a profile has a lock button or is a checkbox itself is really such a small point with no real effect on UX. I wonder why you want to open up the discussion again on such small things, but maybe there are arguments which speak for a button for each profile instead of a checkable list. If there are, please elaborate on the advantages of having a button for each profile and the disadvantage of the checkable list.Von meinem iPhone gesendetAm 20.11.2024 um 13:46 schrieb Adriani Botez ***@***.***>:Ok in this case the discussion seems to get stuck. I tried to summarize and interpret the points agreed on in principle, so that the underlying problems are solved in a user friendly way. It seems you rather expect a 100% summary of the old discussion. Please proceed with your version then, because this one is again blown up already and the arguments you raised are not really bringing this forward in a constructive way.Von meinem iPhone gesendetAm 20.11.2024 um 12:45 schrieb Luke Davis ***@***.***>:
@Adriani90 Respectfully, I do not find this to be an accurate summary of the community conclusion in #10156.
At no point, was it proposed to have a list of locked/unlocked profiles. It was universally stated that each profile, when chosen as active, should have a lock/unlock button.
There were two primary alternatives discussed in the latter half of the issue: a parameter lock, vs. a value lock.
* In a value lock, as proposed by @CyrilleB79, after a user edits some parameters (e.g. speech rate, announce line numbers, synth selection), and locks the profile, no new parameters could be added to the profile, and no changes to the values of those parameters could be made.
* In a parameter lock, as proposed by @Simon818, when locked, the values of already included parameters could still be changed, but no new parameters could be added.
Several difficulties exist with the value lock idea, as adequately stated by others in that issue (especially #10156 (comment)), that make the parameter lock be the preferred (and more user friendly), solution.
That is my reading of the issue--no locked profile list, and the statement of "there is nothing else written to the profileName.ini, but to the global configuration" is not representative of either of the main solutions discussed.
In the value lock idea, other value changes to parameters already in the profile, would have to remain unsaved. In the parameter lock idea, they would be written to the profile.
Lastly, having profiles be locked at creation by default was never raised in the issue that I noticed, so shouldn't be part of the summarized solution. Nobody asked for that, and it seems contrary to the reason someone creates a profile.
The concern raised by @mltony is of course valid, but seems outside the scope of this issue. Issue drift is a big problem on this topic, because there are a lot of tangential problems associated with profiles. But IMO, that one should be its own issue.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: ***@***.***>
|
Beta Was this translation helpful? Give feedback.
-
@XLTechie wrote:
This is not a feasible solution, and @CyrilleB79 as well as others agreed rather upon a parameter based solution which I proposed here. Things on which we didn't agree were not part of the request here. But I've added them all now to the alternatives part in the initial request. |
Beta Was this translation helpful? Give feedback.
-
@XLTechie wrote:
Again this is what I've described above in the initial description. |
Beta Was this translation helpful? Give feedback.
-
That's not true. In #10156 (comment) Regarding saving them to global config when profile is locked, this is the only way to solve @Simon818 problem in #10156 (comment) having the proposed feature in mind. Otherwise his settings would be thrown away after pressing alt+tab, and this is definitely not the intended behavior. |
Beta Was this translation helpful? Give feedback.
-
@SaschaCowley I edit now the alternatives of the discussed things in the initial description, so NV Access can decide on a prefered UX design. |
Beta Was this translation helpful? Give feedback.
-
Is your feature request related to a problem? Please describe.
Currently, changing settings in NVDA when more than one profile is created becomes complex, especially when more than 30 profiles are used. Settings have to be changed regularly on many profiles and this cannot happen at the same time so it's very inefficient.
In case of audio settings, e.g. the other apps volume adjuster does not work as expected, because the setting is profile dependent and so there is no way to change volume of all other apps except NVDA at once, because this has to be done on every profile for every application.
This problem is widely described in #17124 and the solution is currently not fully solving #16052, leading to wrong explanations in the user guide.
Other settings that are problematic with the current profile approach are e.g. the speech rate which often needs to be changed only temporarily, but sometimes also on a global scale and not on a profile scale.
Also ther are valid use cases when screen curtain should remian global and there are use cases when it should be profile based (see #10476 for more details).
Describe the solution you'd like
In #10156 the community came to the conclusion that introducing a lock/unlock feature to every profile is the best solution and easiest to implement.
Locking a profile means the parameter written to the profileName.ini cannot be changed anymore and there is nothing else written to the profileName.ini, but to the global configuration instead.
User story:
By default all profiles are locked / all checkboxes in the checkable list are enabled, meaning that settings changes are always global) The parameter of the settings are not written to the profileName.ini file.
Conclusion
on locked profiles, NVDA would use a combiation of settings parameters written to the profileName.ini file before, and the remaining global settings parameters which are not written to the profileName.ini file.
Problem
What happens when users focused e.g. Firefox and changed a setting (e.g. speech rate) on its profile which was unlocked before, and change that setting again after the profile was locked? In that case we would have two speech rate settings parameters, one on the global configuration and one in the Firefox profile.
Does NVDA prefer the global setting? Or does the parameter which was written to the profileName.ini prevail?
My suggestion to the problem above is:
Describe alternatives you've considered
Value based locking feature
While the proposed solution above is focused on adding settings parameters to the profile ini files when they are unlocked, the alternative would be a value based locking feature:
Drawbacks:
Including or excluding whole settings categories to profiles (same as VO or Orca)
This would allow for every profile to include or exclude settings categories, .g. via a checkable list in the profile dialog. This means every setting changed in the included category (e.g. braille settings) would go into the profile ini file when focusing the app with the profile triggered. When the category is excluded, changing settings in the coresponding category would be saved only in the global config.
Drawbacks:
Additional context
This feature would introduce the risk that users get confused because some of their settings are changed after an NVDA update since the profiles get locked (e.g. if they changed the speech rate both on a profile and in the global configuration).
However, this is not a big problem, users would just have to unlock their profiles in the profile manager dialog manually, or via keystroke, and the previous behavior is restored.
Additional things to consider when implementing this:
Beta Was this translation helpful? Give feedback.
All reactions