Commit Graph

28 Commits

Author SHA1 Message Date
Huy Nguyen
a9d91957b6 Fix ASRangeControllerBeta causing build errors 2016-02-04 17:29:36 -08:00
Huy Nguyen
a7df20d120 Update range mode selection logic in ASRangeControllerBeta 2016-02-04 16:54:31 -08:00
Huy Nguyen
dc93192b87 Address Levi' comment: better method name in ASRangeControllerBeta 2016-02-04 16:52:33 -08:00
Huy Nguyen
8c83e1a78a Avoid asking for interface state multiple times in ASRangeControllerBeta 2016-02-04 16:52:33 -08:00
Huy Nguyen
f09024556b Switch to minimum mode when the node is no longer visible 2016-02-04 16:52:33 -08:00
Huy Nguyen
b3b28b0df9 Reuse visible index paths of when tuning params of a certain range type is zero 2016-02-04 16:52:30 -08:00
Huy Nguyen
fda9efafa6 Add timestamp to notifications of rendering engine and avoid race conditions in ASRangeControllerBeta
- Accurately remove notification observer
2016-02-04 15:44:44 -08:00
Huy Nguyen
3c135788cb Less work when RangeControllerLoggingEnabled is false 2016-02-04 14:15:07 -08:00
Huy Nguyen
69e674c1c8 Range controller registers to rendering engine and extern to full range if needed 2016-02-02 01:23:04 -08:00
Huy Nguyen
1145b6e40e Better decision on when to use full range 2016-02-01 23:43:55 -08:00
Huy Nguyen
0b188c7a95 Add minimum tuning params 2016-02-01 16:24:19 -08:00
Huy Nguyen
56c6bd681b Revert "Revert commit 83aaa46, thus bring 2e4d716 back"
This reverts commit 209425c22c.
2016-01-26 12:05:02 -08:00
appleguy
e37cc4394c Merge pull request #1107 from nguyenhuy/improve_reload_data
[ASTableNode, ASCollectionNode] Optimize -reloadData's teardown of state (blow away UIKit perf!)
2016-01-25 18:38:53 -08:00
Huy Nguyen
209425c22c Revert commit 83aaa46, thus bring 2e4d716 back 2016-01-24 23:38:05 -08:00
Scott Goodson
e6d5e2666c [ASRangeControllerBeta] Scan all nodes after edit operations. 2016-01-24 18:42:02 -08:00
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 2e4d716e0b.

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