On 3/09/2016 9:41 AM, Matthew N. wrote:
Hello sync-dev,
Is there documentation on best practices for making a new data type
that will eventually be synced? I'm trying to figure out a schema and
storage backend for Form Autofill profiles (on desktop to start) and
though we're not implementing the sync engine initially, I would like
the data to be ready for sync without significant re-implemention of
the storage.
Sorry for the delay, but in addition to the "sync engine" semantics
already discussed, this also raises UX we are already starting to hit in
other ways. How do we expose a UI for syncing additional data without
overwhelming the user?
eg:
* There are currently 6 checkboxes for sync "engines".
* There's the new chrome.storage.sync facility (bug 1290440). Instead of
adding a 7th checkbox we took a short-term decision to tie it to the
"addons" engine in the UI while offering an about:config pref to allow
one without the other.
* Thom's got a bug where we want to sync search engine preferences -
which ends up wanting to sync the engines themselves to do a sane thing.
We're thinking that maybe we can maybe abuse the "preferences"
collection for that, but it still leaves the UX - do we need to have a
UI that differentiates "preferences" from "search engines and related
preferences"?
* Light-weight themes already abuse the preferences engine - they carry
the pref name, but not the themes themselves. There's already a hack to
special case the setting of the pref name using the LWTheme API, but
doing this right also looks like the search engines above WRT also
syncing the themes.
auto-fill seems a similar "scope-creep" problem - and one we will keep
hitting as we improve what can be synced. I doubt we want 10+ checkboxes
and I'm not sure we can group all this stuff under a generic
"Preferences". Maybe call it "Firefox Settings" and stick with
about:config for advanced users? Maybe re-think the prefs UI entirely?
Something else?
rfeeley, WDYT?
Mark
_______________________________________________
Sync-dev mailing list
[email protected]
https://mail.mozilla.org/listinfo/sync-dev