Commit Graph

8 Commits

Author SHA1 Message Date
Scott Goodson
90a1bb2346 Ruthlessly improve efficiency in ASRangeControllerBeta.
- Use completedNodes directly, caching inner arrays and counts between loop iterations.
- Merge codepaths between the "entire self - table / collection" visible or invisible cases
- Ensure we do not trigger an assertion if a previous iteration's node is nil by the time
  we try to reset its interfaceState.
2016-01-10 02:58:48 -08:00
Scott Goodson
0feaa2a368 Improvements to the efficiency of recursivelySetInterfaceState: and the beta range controller. 2016-01-10 02:40:47 -08:00
Scott Goodson
bbfd08829f Switch Tests to use ASRangeControllerBeta. Use NSSet instead of NSMutableSet. 2016-01-05 23:29:11 -08:00
Scott Goodson
d1c3894dbb [ASRangeControllerBeta] Add tracking of all index paths that have .interfaceState set, ensure updating. 2016-01-05 23:17:54 -08:00
Scott Goodson
984fe43997 [ASRangeController] Inspect delegate's ASInterfaceState to delay preloading beyond viewport until visible. 2016-01-03 19:14:07 -08:00
Scott Goodson
25b6f29584 Introduce ASCollectionInternal file and create always-available ASCView -> ASCNode backpointer. 2016-01-01 23:36:00 -08:00
Scott Goodson
b273f358f5 [ASRangeController] Initial implementation of functional-style, ASInterfaceState-based range controller. 2016-01-01 00:48:44 -08:00
Scott Goodson
7a9cd1f930 [ASRangeController] Introduce totally rewritten range controller based on ASInterfaceState. 2015-12-31 17:59:59 -08:00