Open Bug 1508971 Opened Last year Updated 20 days ago

Add texture view support for animations


(GeckoView :: General, enhancement, P3)



(Not tracked)


(Reporter: fluffyemily, Unassigned)


(Blocks 1 open bug)


No description provided.
Colin, could you add some more details around what you need for this?
Flags: needinfo?(colee)
GeckoView is currently written using a SurfaceView. This makes it difficult to use in many ways. I'd like to use GV to render live thumbnails for tabs. Whenever our designers want to use an animation, we shouldn't have to ask whether it uses GV and then hack our own TextureView around the internals of GeckoView to make it work.

Agi Sferro already has the basics implemented to make GeckoView work as a TextureView, which would solve both needs: live thumbnails and animations. I believe it's not checked into the mainline yet and isn't exposed through the API. At the time he showed it to me, he was still working out some issues with their intended usage.
Flags: needinfo?(colee)
Product: Firefox for Android → GeckoView
Agi what priority would you give this bug?
Flags: needinfo?(agi)
Marking P3 because we want to fix it but there is no great way forward yet. Fair bit of work.
Flags: needinfo?(agi)
Priority: -- → P3
Agi estimates this would be 2-3 weeks of work.

This was a feature request from Focus for Focus's "throw page in trash can" animation.

Colin wanted this for the Focus tab switcher animations, but James says apps can do this themselves.
I also wanted this to render live tab thumbnails in Focus and Fenix. Agi provided me with a WIP patch to build my own TextureView around GeckoView, but I haven't had a chance to use it yet as I was just prototyping UI at the time for a customer trial and had it working well enough in WebView for users to test it.
:snorp said we could do this by letting GeckoView render to a TextureView provided by the embedder. n-i in case he wants to add details.
Flags: needinfo?(snorp)
Yeah, dynamically switching to a TextureView in the GeckoView class is difficult, but apps can easily hook up their own TextureView-based thing for stuff like a tab switcher UI where you don't care about handling input and all of the other things the GeckoView class does.
Flags: needinfo?(snorp)
You need to log in before you can comment on or make changes to this bug.