Note: currently users do not have the option of blocking all cookies if they choose to.
Design Work
Deliverable
Deliverable Links
@Amejia481 are these prefs already available in A-C?
Yes, we have them.
They can be customized by using the select function on the TrackingProtectionPolicy class:
TrackingProtectionPolicy.select(
trackingCategories = arrayOf(TrackingCategory.RECOMMENDED),
cookiePolicy = CookiePolicy.ACCEPT_NON_TRACKERS
)
trackingCategories controls which categories should be blocked like tracking content, fingerprinters and cryptominers.
cookiePolicy sets how cookies should behave:
CookiePolicy vs UI
CookiePolicy.ACCEPT_NON_TRACKERS -> Cross-site and Social media trackers.
CookiePolicy.ACCEPT_VISITED -> Cookies from unvisited websites.
CookiePolicy.ACCEPT_ONLY_FIRST_PARTY-> All third-party cookies.
CookiePolicy.ACCEPT_NONE-> All cookies.
Thank you @Amejia481 :)
Another question: Do we currently have a pref for different TP settings in regular VS private mode? On desktop, if a user chooses standard TP, they actually get strict TP in private browsing. Do we currently do that in Fenix, and if not do we have the pref to do it?
Another question: Do we currently have a pref for different TP settings in regular VS private mode? On desktop, if a user chooses standard TP, they actually get strict TP in private browsing.
Yes, we have them. On the tracking protection policy object, there are functions for specifying it trackingProtectionPolicy.forRegularSessionsOnly() or trackingProtectionPolicy.forPrivateSessionsOnly().
Do we currently do that in Fenix, and if not do we have the pref to do it?
We we have most of the code for doing it here, but we have fixed value here that we have to update for it to work properly.
@vesta0 Posted UX spec to comment 0. This is ready for engineering.
cookiePolicysets how cookies should behave:CookiePolicy vs UI
CookiePolicy.ACCEPT_NON_TRACKERS-> Cross-site and Social media trackers.
CookiePolicy.ACCEPT_VISITED-> Cookies from unvisited websites.
CookiePolicy.ACCEPT_ONLY_FIRST_PARTY-> All third-party cookies.
CookiePolicy.ACCEPT_ONLY_FIRST_PARTY-> All cookies.
@Amejia481 Thanks for the detailed mapping. Shouldn't "All cookies" be CookiePolicy.ACCEPT_NONE? TY!
@vesta0 For custom ETP trackingCategories will:
option a = include all categories and user can remove CONTENT, CRYPTOMINING or FINGERPRINTING
option b = include none of the categories and user can include CONTENT, CRYPTOMINING or FINGERPRINTING
?
TY!
@Amejia481 Thanks for the detailed mapping. Shouldn't "All cookies" be CookiePolicy.ACCEPT_NONE ? TY!
@mcarare Yes, it should beCookiePolicy.ACCEPT_NONE sorry I duplicated the last line, I updated it on my comment above, thanks for catching it.
@AmyYLee Do we have specs for the other themes also?
@AmyYLee Do we have specs for the other themes also?
Hi @mcarare
Can you please reference our existing palette for Private Browsing and Dark theme? I've attached reference screens and menus. Let me know if you have any questions.

Verified that the new option is implemented on the latest Beta 4.0.0-beta.1 using Samsung Galaxy S8 (Android 9) but still find some new bugs(#8529, #8536, #8540) related to the new "Custom" option.
I'll let this ticket open till I can confirm that I tested every scenario for this feature.
Since no new issue who can block this meta was filled, I will close the ticket as verified, thanks.