Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
add ability to attach callbacks when resolving file asset listeners
Bascially add tracking of fileAssetReferencers from file assets, so that when file assets update, they can tell things that reference them to update also. its worth looking at the rive-flutter & runtime implementations in cpp it looks like we can hook into the delete hooks nicely to clean up after ourselves (so that when artboards get collected we are not holding references to them from file assets) in dart this is more of a problem, however using weakReferences we do end up seeing artboards go out of scope but weakReferences requires us to bump to a min dart of 2.17 (we are 2.14 in flutter & 2.12 in our editor atm) the update here also uses the referencers to mark fonts dirty when fonts are set, which causes them to be updated on the next draw cycle (video showing font updates working properly now in dart) https://github.com/rive-app/rive/assets/1216025/d65ea2cf-95d6-4412-b8f5-368cda609d0b (video showing how referencers get collected and trashed in dart, it looks like we hold onto about 10 of them at a time.. but they do drop off over time. also we start with 2 references, the main artboard and the artboard instance) https://github.com/rive-app/rive/assets/1216025/b11b7b46-aa9d-4dcc-bc11-f745d8449575 Diffs= 7bc216b03 add ability to attach callbacks when resolving file asset listeners (#6068)
- Loading branch information