Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Conversation

@jonahwilliams
Copy link
Contributor

This is a quickly hacked together proof of concept of deferring drawable aquisition to the last possible second. This comes at the cost of removing partial repaint, as we can't tell which framebuffer we'll be given until we're done with all work.

lots of playground and embedder code was commented out - this isn't strictly necessary but reduced the scope of changes for experimentation.

jonahwilliams added 2 commits November 13, 2023 14:34
@jonahwilliams
Copy link
Contributor Author

FYI @luckysmg , this is a bit of a hack right now - but I'm interested if you'd be curious to try it. This changes the flutter engine to follow apple best practices and defer drawable aquisition as late as possible. For cases where there are no platform views, this should entirely remove the visible waitForNextDrawable delay (partially by moving this to a worker thread).

@luckysmg
Copy link
Contributor

Oh. I will have a try later ^_^

@luckysmg
Copy link
Contributor

luckysmg commented Nov 15, 2023

Tested this branch on iOS 17.1.1 iPhone15ProMax. Seems works fine^_^

@jonahwilliams
Copy link
Contributor Author

#48141 is a cleaned up version of this.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

No open projects
Archived in project

Development

Successfully merging this pull request may close these issues.

2 participants