You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Feb 2, 2023. It is now read-only.
Create an enum for ASDisplayNode that captures the current state of a node in its lifecycle.
blank slate -> data loaded (changing this calls -invalidateCalculatedSize, eg the attributed string or image property) -> measurement -> layout -> rendering -> all done
The node can react to what happens at each state change, and other mechanisms (such as ranges) can rely on the state and changes in order to perform certain actions.
Changes should be rolled out into phases:
Create enum & flag on ASDisplayNode that is changed in appropriate methods. Flag reflects state in node lifecycle.
React to state changes
Wire up ranges and any other mechanisms that can piggy-back off changes
Remove Core Animation hooks and instead rely on state changes
Capturing enhancement discussions
Create an enum for
ASDisplayNodethat captures the current state of a node in its lifecycle.The node can react to what happens at each state change, and other mechanisms (such as ranges) can rely on the state and changes in order to perform certain actions.
Changes should be rolled out into phases:
ASDisplayNodethat is changed in appropriate methods. Flag reflects state in node lifecycle.Any more thoughts?