settled property
False means the budget ran out with work still pending — an infinite animation, a spinner. Reported, never thrown: the caller always gets its observation back.
It answers "is the app painting", which is not "is the screen ready".
The only things it can see are the ones below: a scheduled frame, a
running ticker, an image being decoded. A Future waiting on the
network, a file or an isolate schedules none of them, so a screen that
has drawn its empty state and is still fetching settles immediately and
truthfully — the app really has stopped painting. Whoever reads this
wanting "the screen is done" has to read the texts as well.
Implementation
final bool settled;