Yeah, this can really rabbit hole.
(In reply to Botond Ballo [:botond] from comment #2)
(In reply to Botond Ballo [:botond] from comment #1)
For instance, should
SetZeroMarginDisplayPortOnAsyncScrollableAncestors() set displayports on cross-process ancestors?
Is this function even needed anymore (in Fission mode), now that every async-scrollable frame gets a minimal displayport (since bug 1675547)?
Not really needed in fission mode no, the minimal displayports should make sure that we don't have to activate a scrollframe after descending into it.
I purposely didn't touch SetZeroMarginDisplayPortOnAsyncScrollableAncestors when adding minimal displayports to keep the scope reasonable. I think there are still a few open questions about the minimal display port approach so I want them to bake a bit more before we refactor in this area. It seems like all the regressions we've found in apz lately get reported 3-4 months after landing, and fission is still getting rolled out to a wider audience, so I'm not ready to stamp the minimal displayport approach with the "working well" stamp yet.