13 Commits

Author SHA1 Message Date
Matej Knopp
51e4476068 [ASRangeController] don't get index paths twice if tuning parameters are same
Signed-off-by: Matej Knopp <matej.knopp@gmail.com>
2016-01-24 23:41:46 +01:00
Scott Goodson
92ce6ce4d3 [ASRangeControllerBeta] Improve comments, code clarity, cache respondsToSelector: 2016-01-24 14:07:39 -08:00
Scott Goodson
351f4a9afc Utilize NSMutableOrderedSet in ASRangeControllerBeta to ensure visible items are prioritized.
This also adopts Objective-C generics for the various collections in this class.
2016-01-24 13:11:15 -08:00
Scott Goodson
83aaa4637e Revert "ASDataController now handles reloadData more efficiently and notify its delegate once instead of a series of deletes and inserts"
This reverts commit 2e4d716e0b65465d9c65b5821668c38e5fa956c9.

Possible issue with this commit.
2016-01-22 20:33:33 -08:00
Huy Nguyen
2e4d716e0b ASDataController now handles reloadData more efficiently and notify its delegate once instead of a series of deletes and inserts 2016-01-21 11:21:21 -08:00
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