Invalidations below the framework layer could lead to NPEs, since the framework class types will get
recreated. To ensure this doesn't happen, look them up each time.
Instead of checking the component for subtypes, use an isExtended API and the existing mixed in API to
get the same results. This should allow this check to work correctly with the new invalidation strategy.
Bug: https://github.com/dart-lang/sdk/issues/43760
Change-Id: I439c085540403e29083c74b2add642656b3fa0a3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/167441
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Add an initial draft of the widget cache for fast single widget reloads.
THe intention is to capture the common cases where only a single widget class is modified. This can
provide a signal to the flutter tool that a faster reassemble can be performed, rather than forcing
a complete cold frame.
For more details see the linked issue or go/fast-single-widget-reloads
Bug: https://github.com/flutter/flutter/issues/61407
Change-Id: I1c95fd8fb2d1b297f41874dd69c1c76b0456a4bb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/161604
Commit-Queue: Jonah Williams <jonahwilliams@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>