Closed Bug 1601660 Opened 4 years ago Closed 4 years ago

Make GeckoView get content blocking log from the parent process

Categories

(GeckoView :: General, task, P1)

Tracking

(firefox74 fixed)

RESOLVED FIXED
mozilla74
Tracking Status
firefox74 --- fixed

People

(Reporter: dlee, Assigned: timhuang)

References

Details

Attachments

(3 files)

GeckoView accesses content blocking log here via docshell.getContentBlockingLog.

There are two approaches we can take to make this anti-tracking fission compatible:

  1. Add a IPC message from the child to the parent to get the log.
  2. GeckoView gets content blocking log directly from the parent.

The better way would be #2 because the log is already in the parent process, so we don't have to involve an IPC call. If #2 is not doable, then we will use #1 approach.

Dylan, needinfo you since you implemented Bug 1580201
We are current moving content blocking log from the child process to the parent process to make anti-tracking fission compatiable. APIs that access content blocking log also need to update accordingly. One thing related to geckoview is the use case here

My question is, for this use case, can GeckoView access ContentBlockingLog directly from the parent process through WindowGlobalParent(will be implemented in Bug 1599043). If not, I'll fix this with approach #1., thx

Flags: needinfo?(droeh)

(In reply to Dimi Lee [:dimi][:dlee] from comment #1)

Dylan, needinfo you since you implemented Bug 1580201
We are current moving content blocking log from the child process to the parent process to make anti-tracking fission compatiable. APIs that access content blocking log also need to update accordingly. One thing related to geckoview is the use case here

My question is, for this use case, can GeckoView access ContentBlockingLog directly from the parent process through WindowGlobalParent(will be implemented in Bug 1599043). If not, I'll fix this with approach #1., thx

Yes, I think we can get the WindowGlobalParent in parent process js -- it will probably actually be an improvement over our current implementation.

Flags: needinfo?(droeh)
Component: Privacy: Anti-Tracking → Tracking Protection
Product: Core → GeckoView
Assignee: nobody → tihuang
Status: NEW → ASSIGNED
Summary: Make GeckoView get content blocking log from the parent process or update docshell.getContentBlockingLog to use IPC → Make GeckoView get content blocking log from the parent process
Attached file code removal.patch

This patch is doing two things.

  1. Make GeckoView directly gets the ContentBlockingLog in the parent
    process when it gets the bundle event 'ContentBlocking:RequestLog'. It
    will get the top-level browsingContext and get the log from the
    WindowGlobal of this browsingContext.
  2. Remove the GeckoViewContentBlockingChild. The child module of
    ContentBlocking is no longer needed since it serves nothing after we move
    the functionality of getting log to the parent process.
Attachment #9116350 - Attachment description: Bug 1601660 - Remove getContentBlockingLog from nsIDocShell.idl → Bug 1601660 - Part 2: Remove getContentBlockingLog from nsIDocShell.idl
Pushed by dlee@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/06001b30f6cd
Part 1: Make GeckoView to get the content blocking log in the parent process. r=geckoview-reviewers,Ehsan,snorp
https://hg.mozilla.org/integration/autoland/rev/ec5d3b078a88
Part 2: Remove getContentBlockingLog from nsIDocShell.idl r=Ehsan
Backout by opoprus@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/e2677d8ef770
Backed out 2 changesets for gv-junit failures in ContentBlockingControllerTest. on a CLOSED TREE
Pushed by dlee@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/970c96636f40
Part 1: Make GeckoView to get the content blocking log in the parent process. r=geckoview-reviewers,Ehsan,snorp
https://hg.mozilla.org/integration/autoland/rev/ebff6fae285e
Part 2: Remove getContentBlockingLog from nsIDocShell.idl r=Ehsan
Pushed by nerli@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/bcd450deb288
Fix lint failure r=fix CLOSED TREE
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla74
Flags: needinfo?(tihuang)

Move GeckoView::Tracking Protection bugs to the GeckoView::General component.

Component: Tracking Protection → General
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: