* Add preferences for enable/disable sync for cc and addresses
* Set pref visibility based on feature flags
* Helper function for pin warning preferences and set default values for cc and addresses to false.
* Kdocs for relevant sync functions in account settings
* Default visibility to false for credit cards and addresses in account settings
We now have a BrowserTrayList.
- Renamed from `BaseBrowserTrayList`.
- Removed the abstract `configuration` and used a `lateinit var`
instead.
- Removed `NormalBrowserTrayList` and `PrivateBrowserTrayList`.
Previously renaming a TopSite would bind that as a new item and in such update
the entire list. This could potentially leading changes in the list and then
it's ViewPager parent's layout.
This patch switches the code to use the existing TopSitePayload and so do a
partial update of an on-screen TopSite instead of rebind it as a new item.
If a layout is requested while showing <=4 TopSites on the second page, by
having "offscreenPageLimit = 1" the biggest height of ViewPager pages is used
preventing an edgecase where the ViewPager would hide half of the items from
the first page.
Index calculation for notifying changes while renaming a top site in the second
page was being wrongly calculated. Since it is page 2, we would need to take a
mod with the number of top sites per page to get the actual index of the top
site that was being renamed.
* Replaced #20123A with @color/photonInk80 in values\colors.xml
* Replaced #F9F9FB with @color/photonLightGrey10 in values\colors.xml
* Replaced #E0E0E6 with @color/photonLightGrey30 in values\colors.xml
* Replaced #592ACB with @color/photonViolet70 in values\colors.xml
* Replaced #312A65 with @color/photonInk20 in values\colors.xml
* Replaced #FBFBFE with @color/photonLightGrey05 in values\colors.xml
* Replaced #52525E with @color/photonDarkGrey10 in values\colors.xml
* Replaced #ffffff with @color/photonWhite in values\colors.xml
* Replaced #5B5B66 with @color/photonDarkGrey05 in values\colors.xml
* Replaced #1C1B22 with @color/photonDarkGrey80 in values\colors.xml
* Replaced #737373 with @color/photonGrey50 in values\colors.xml
* Replaced #9059FF with @color/photonViolet50 in values\colors.xml
* Replaced #5B5B66 with @color/photonDarkGrey05 in values-night\colors.xml
* Replaced #3A3944 with @color/photonDarkGrey40 in values-night\colors.xml
The main cause for this is that the `LifecycleProvider` needs to be set
to `State.RESUMED` to avoid the account manager's internal
`ObserverRegistry` from putting the UI observers into the paused state.
The rest of the changes is to rely the internal (safe) logic to
correctly sync and then update the tabs list.