Right now, changing position of a stacking context causes the entire display list
below it to be re-painted. The reason is that the paint offsets are stored relative
to the containing transform, which could be far above the stacking context.
If the position were instead stored in a transform, changing the position could
be accomplished by a fast path that mutates that transform, and leaves the display
list subsequence under the stacking context unchanged.
In SPv1 mode it seems the implementation would require special code to avoid
invalidating elements under the stacking context when changes are made outside
of it. In SPv2 mode I think we would get it for free, because visual rects are
stored relative to containing transform.
Comment 1 by chrishtr@chromium.org
, Dec 1 2017