Fenix: Custom ETP: Choose which trackers and scripts to block

Created on 6 Nov 2019  ยท  12Comments  ยท  Source: mozilla-mobile/fenix

User Story

  • As a user, I want to choose which type of trackers and scripts to block in my browser, so I can have full control over my privacy settings.

Note: currently users do not have the option of blocking all cookies if they choose to.

Acceptance Criteria

  • [x] I can go in my ETP settings and choose "custom" and decide on which trackers and scripts are blocked.
  • [x] I can choose to block all cookies if I want.
  • [ ] Telemetry Ticket to track how often users choose custom

Design Work

  • [ ] Request for Comments from UX team
  • [ ] N/A Usability testing if a new pattern or potentially confusing UI
  • [x] Request for Comments from Fenix team and/or A/C, GV, Sync, etc as needed
  • [x] Interaction details included
  • [ ] N/A Accessibility - is this a review by someone, just keeping it in mind?
  • [x] For existing UI changes, details are highlighted
  • [x] Strings/content reviewed and approved
  • [ ] Are they too long for the component in other locales

Deliverable

  • [x] Assets uploaded to Google Drive
  • [x] Links to deliverables (spec, assets) posted in comment 0

Deliverable Links

UX Spec

E8 FennecTransition Privacy&Security TrackingProtection engverified ready

All 12 comments

@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.

  • 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_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.

Screen Shot 2020-02-13 at 1 23 40 PM

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.

Was this page helpful?
0 / 5 - 0 ratings