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

Required settings by language #1569

Open
jamesmaa opened this issue Nov 5, 2024 · 1 comment
Open

Required settings by language #1569

jamesmaa opened this issue Nov 5, 2024 · 1 comment
Labels
kind/enhancement The issue or PR is a new feature or request

Comments

@jamesmaa
Copy link
Collaborator

jamesmaa commented Nov 5, 2024

Change settings based on language selected. #1542 is an example.

Settings can be similar to the form as #1328 with modifications. Namely I believe only idempotent operations should be allowed with Modifications. Secondly I believe there should be an optional hideSetting field that determines whether a setting should be hidden after setting.

Adding a new required setting to a language should only involve editing a single json file. All the CSS for hiding the setting should be programmatically done.

Also need to fold #1542 into the required settings framework

@jamesmaa jamesmaa added the kind/enhancement The issue or PR is a new feature or request label Nov 5, 2024
@jamesmaa
Copy link
Collaborator Author

Kuuuube mentioned not wanting to override the setting values in case profiles get copied and the previous user's selection gets erased

Some directions we can go

Implementation 1: override the settings value would be the simplest implementation but has the drawbacks of changing a user's settings value without notifying them. This could technically be hedged by requiring all settings to have "required | recommended | null" value or by notifying the user which values have changed.
Implementation 2: store the required setting separately and resolve the final setting value in setting-controller.js. This preserves "memory" by not changing the user-set value but the downside is that the user setting value in the settings page would not reflect the true value (and instrumenting the settings page to reflect this is a ton of work)

I'm leaning towards implementation 1 with a notification on which settings have changed. Thoughts @Kuuuube?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/enhancement The issue or PR is a new feature or request
Projects
None yet
Development

No branches or pull requests

1 participant