>This proposal is a bit hacky. The more pure solution would be to teach the compositor to create CoreAnimation layers for Gecko layers, so that for example the throbber animation gets one CoreAnimation layer that contains all the animation frames in a film strip, plus an offset and clip that only shows the current frame. (That's how the Gecko layers are set up for the throbber animation.) Such a solution would be preferable but it would require much more work in the compositor. The tiling solution that I'm proposing in this bug is easier to implement and a bit more generic, because it treats CompositorOGL compositing as a black box that just produces a framebuffer filled with pixels, along with an invalid region.
https://bugzilla.mozilla.org/show_bug.cgi?id=1491456
If I am following this correctly, when dealing with a small on-screen animation, they are moving from having to repaint the whole window to only repainting a largish chunk of the window.
Adopting CALayers at a deeper level in Gekko would allow them to only update the animation itself.
Doing so would require a good deal of additional work.
I can see where it would make more sense to do the deeper integration work "where the puck is going" so to speak.
I appreciate the work you and your comrades are doing.
Do you think 100million is nothing?