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

Categorized Settings #4357

Open
wixbot opened this issue Mar 18, 2014 · 0 comments
Open

Categorized Settings #4357

wixbot opened this issue Mar 18, 2014 · 0 comments
Assignees
Milestone

Comments

@wixbot
Copy link

wixbot commented Mar 18, 2014

Right now, settings engine intentionally only tracks data it thinks a typical person would want to sync, and ignores (doesn't even backup) everything else. This is intentional as a temporary workaround because we don't have any concept of per-machine settings. For example, a laptop and a desktop probably shouldn't have their graphics resolution setting for a demanding game synchronized - doing so could cause the game to be very slow (or not to boot at all) on the laptop, or the graphics to be very low quality on the desktop. So UDM manifests literally tell the settings engine to just plain ignore those settings, today.

Settings Engine should have a way of storing per-machine settings locally and propagating them to the remote database in a way that they will be available to sync back to from remote should you reformat the machine, but will not actually take effect on other machines.

This opens a huge design discussion about exactly what is a per-machine setting - what settings do you want to sync, and what do you not want to sync. One user may want graphics quality settings to propagate between two identical hardware desktops in the same household, but not to the laptop, which also syncs between the other two. I think the appropriate way to do this is to define a standard list of (probably hierarchical) categories which each setting belongs to, and allow users to choose which categories sync between which machines, with a default policy as sane as we can make it.

For example, in the scenario that you have 2 desktops (A and B) and a laptop (C), they should all by default synchronize save games, and NOT synchronize graphics quality settings. However, the user should be able to override to specify that machines A and B do synchronize graphics quality settings for all apps. Likewise, the user should be able to specify that machines B and C synchronize mouse sensitivity settings for all apps (perhaps they use the same exact mouse model), but not with A. And even if machine C gets reformatted, it should get all of its settings back painlessly.

We need to define a global tree of settings "categories" that all UDMs can organize a particular application's settings into, and create a first version UI that let a user override default policy by specifying which categories sync between which computers.

Originally opened by mike-gc

@wixbot wixbot added this to the v4.x milestone Dec 20, 2015
@rseanhall rseanhall modified the milestones: v4.x, Settings Feb 14, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants