Support sync addresses through the Rust store's bridged engine
Categories
(Toolkit :: Form Autofill, task, P2)
Tracking
()
People
(Reporter: dimi, Assigned: dimi)
References
Details
Attachments
(1 file)
| Assignee | ||
Comment 1•10 days ago
|
||
Sync has to read and write the same store the browser does. Register the two
address engines as alternatives on rust.active, so whichever store is serving
is the one that syncs -- otherwise incoming addresses land where nobody reads
them and local ones are never uploaded.
RustAddressesEngine is a BridgedEngine, since reconciliation happens inside
Rust. resetLastSync stands in for a bridge method the autofill component
implements but does not expose, and FormAutofillTracker is reused rather than
given a Rust-specific counterpart as logins did: it only scores notifications,
with no JSON-store change list to get wrong.
Applying inside Rust also means nothing fires formautofill-storage-changed, so
FormAutofillStatus never refreshes FormAutofill:savedFieldNames and a profile
that receives its addresses from sync is offered no autofill until restart. The
engine announces them itself, once per sync.
Split out of bug 2058441, which migrates the addresses, so that bug is only
about moving the data. rust.enabled is off by default, so no profile serves
Rust while sync still points at JSON.
Updated•9 days ago
|
Description
•