Open Bug 1629340 Opened 5 years ago Updated 1 year ago

Sync pinned sites between Desktop and mobile

Categories

(Firefox :: Sync, enhancement)

enhancement

Tracking

()

People

(Reporter: lina, Unassigned)

References

(Blocks 1 open bug)

Details

We currently sync the browser.newtabpage.pinned pref, which is a JSON string pref with the user's pinned sites. Unfortunately, these don't sync between Desktop and mobile (Fenix or iOS), as they 1) don't support preference sync, and 2) use completely different storage backends for top sites.

Recently, the Fenix team asked about top sites storage in https://github.com/mozilla-mobile/fenix/issues/6190. We decided to give them an API for fetching frecent top sites (https://github.com/mozilla/application-services/issues/2163), and have them persist the user's explicitly pinned top sites locally in a-c (via an Android Room; https://github.com/mozilla-mobile/android-components/pull/5360) instead of in Rust.

Over on GitHub, a Firefox for iOS user was also wondering why we don't sync top sites, and pinned ones in particular.

I opened this bug specifically for syncing pinned sites to mobile, but I wonder if this might eventually morph into a "Top Sites Rust component", given that we store them on all our platforms, and there's interest in syncing them around.

but I wonder if this might eventually morph into a "Top Sites Rust component"

Does it make sense for this to be a separate component, or could/should it be an additional feature of the existing "places" component?

(In reply to Ryan Kelly [:rfkelly] from comment #1)

but I wonder if this might eventually morph into a "Top Sites Rust component"

Does it make sense for this to be a separate component, or could/should it be an additional feature of the existing "places" component?

This needs more thought, but at face value, there are 2 bits here:

  • A frecency-based, somewhat device agnostic (although we do have an "is local" flag), organic "top sites".

  • A mechanism for pinning and/or otherwise capturing user customization.

Our components naturally support the first, but are oblivious to the second. I think it makes sense for us to reconcile these, but it needs some interesting cross-team thinking.

(also, while I don't have the bug on hand, there is a very well articulated bug I could find from an internal contributor who argues for per-device top sites. Any user customization scenarios must (IMO) include the ability to not sync them, or only sync them across form-factors, or something else entirely)

This is more than just an inconvenience as well. Top sites on desktop can have a separate Title from URL. This is not possible on mobile. I have a number of top sites which are just different ports on the same IP. I can't tell them apart on mobile as I can't edit them that way. It wouldn't be an issue if the sync from desktop worked.

(In reply to Mark Hammond [:markh] [:mhammond] from comment #3)

(also, while I don't have the bug on hand, there is a very well articulated bug I could find from an internal contributor who argues for per-device top sites. Any user customization scenarios must (IMO) include the ability to not sync them, or only sync them across form-factors, or something else entirely)

  • As the title said, the issue is about syicing the ones users pinned.
  • There can be a option in the sync preference for pinned top sites, just like bookmark, history, etc.
You need to log in before you can comment on or make changes to this bug.