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

Conversation

appleguy
Copy link
Contributor

@appleguy appleguy commented Jan 1, 2016

Lots more to come here.

  • The display queue system needs to be significantly upgraded. It has to be able to check for parent-child relationships in its queue, minimize lock contention, and support neverShowPlaceholders.
  • ASLayoutController will be revised, particularly the removal of updateBounds and changing how range "validity" is used so that updates are more frequent, allowing the code to be more functional.
  • Nested ASRangeControllers will be supported, with a notion of collaborating orthogonal elements.
  • Visibility will be inherited from above, such that a currently-offscreen view being preloaded will not tell its about-to-be visible cells that they are visible until they truly are.

@appleguy appleguy changed the title [ASRangeController] Introduce totally rewritten range controller based on ASInterfaceState. [ASRangeController] Newly rewritten, functional-style range controller based on ASInterfaceState. Jan 1, 2016
appleguy added a commit that referenced this pull request Jan 1, 2016
[ASRangeController] Newly rewritten, functional-style range controller based on ASInterfaceState.
@appleguy appleguy merged commit c40c2d3 into master Jan 1, 2016
@appleguy appleguy deleted the RangeControllerBeta branch January 1, 2016 09:33
yxztj pushed a commit to iftechio/AsyncDisplayKit that referenced this pull request Sep 29, 2018
- Rename `ASDisplayNodeAssertLockUnownedByCurrentThread` to `ASAssertUnlocked`, and `ASDisplayNodeAssertLockOwnedByCurrentThread` to `ASAssertLocked` -> shorter and hopefully easier to distinguish between the two.
- Add assertions to `_locked_` and `_u_` (i.e "unlocked") methods.
- Turn `CHECK_LOCKING_SAFETY` flag on by default. After facebookarchive#1022 and facebookarchive#1023, we're in a good shape to actually enforce locked/unlocked requirements of internal methods. Our test suite passed, and we'll test more at Pinterest after the sync this week.
- Fix ASVideoNode to avoid calling `play` while holding the lock. That method inserts a subnode and must be called lock free.
- Simplify `_loaded(node)` to only nil-check `_layer` because regardless of whether the node is view or layer backed, the layer should always be set if loaded. Use it throughout.
- Other minor changes.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants