Nick Velloff
d0c30a43ca
expose relayoutAllNodes at ASCollectionView level ( #1683 )
...
* expose relayoutAllNodes at ASCollectionView level
* rename relayoutAllNodes to relayoutItems to be more UIKit centric
2016-05-24 13:22:01 +07:00
Rocir Santiago
e8a49b57bc
Change ASTableView's visibleNodes interface to return array of ASCellNodes ( #1666 )
2016-05-22 14:10:12 +08:00
Eric Jensen
ddd5ff1f75
Correct spelling errors
2016-03-15 21:56:51 -07:00
Michael Schneider
aa2ae87c81
Add -waitUntilAllUpdatesAreCommitted to ASTableView and ASCollectionView
...
The API allows consumer of ASTableView or ASCollectionCiew to block execution of the main thread until all section and row updates are committed.
2016-03-02 19:38:14 -08:00
Scott Goodson
e1597f902a
Increase default value for leadingScreensForBatching to 2.0, as 1.0 is not enough
...
for most network conditions / backend performance.
2016-02-16 22:19:27 -08:00
Rahul Malik
3e5daf4ccd
Update data source protocols to make synchronous node creation api methods optional.
2016-02-09 22:47:43 -08:00
Rahul Malik
c4f489b074
Address comments.
2016-02-04 16:56:29 -08:00
Rahul Malik
521c3fa1c1
Move ASCellNode allocation off the main thread by the addition of a node block
...
API in ASDataController. Move allocations and loaded node layouts to occur
during batch layout phase.
2016-02-04 10:38:59 -08:00
Huy Nguyen
19335d8c9e
Add rangeMode APIs
2016-02-02 11:58:18 -08:00
Adlai Holler
d19e56d802
Beef up documentation around new delegate methods
2016-01-12 23:27:30 -07:00
Adlai Holler
5e72daa2e3
Pass node along in didEndDisplayingNode method
2016-01-12 15:42:37 -07:00
Scott Goodson
44feece701
Implement node-backing for ASTableView and ASCollectionView, with a strong back-pointer in these cases.
2015-12-26 23:05:34 -08:00
Scott Goodson
c6fa897dc2
Add nullability annotations to newer APIs that lacked it from the original PR.
2015-12-25 15:35:52 -08:00
Scott Goodson
882d4b336e
Merge branch 'master' into pr/664
2015-12-25 14:32:41 -08:00
Scott Goodson
4ca97e2f4d
Optimize string handling for CALayer gravity & UIView content mode. Finally fix protocol rename.
2015-12-24 23:13:50 -08:00
Scott Goodson
7ece41ff64
Delegate definition tweaks for Table and Collection; ensure Table tests run with ARC enabled.
2015-12-24 21:41:12 -08:00
Scott Goodson
27c151095b
[ASPagerNode] New API tweaks. Support setting delegate + dataSource on ASCollectionNode and ASTableNode without triggering view creation.
2015-12-24 17:06:57 -08:00
Adlai Holler
dfc098fc20
Merge branch 'master' into update-objc
...
Conflicts:
AsyncDisplayKit/ASCollectionView.h
AsyncDisplayKit/ASTableView.h
AsyncDisplayKit/Details/ASLayoutController.h
AsyncDisplayKit/Details/ASRangeController.h
2015-11-24 16:40:03 -08:00
appleguy
15f718ddc9
Merge pull request #868 from levi/levi/remove-deprecated
...
Clean up syntax and organization of ASRangeController
2015-11-23 21:24:58 -08:00
Levi McCallum
e9a32bfd3c
Remove deprecated layout controller methods
2015-11-19 11:48:06 -08:00
Adlai Holler
ecaabc8435
Merge branch 'master' into update-objc
...
Conflicts:
AsyncDisplayKit/Details/UIView+ASConvenience.h
2015-11-18 14:17:09 -08:00
Scott Goodson
2a0b9c8e14
Substantially improve behavior of nested Table & Collection Nodes
...
This ensures memory cleanup happens correctly and introduces a new test project
to support developing new features while stressing tough use cases for correctness.
2015-11-14 15:25:35 -08:00
Adlai Holler
b4b88da8cd
Merge branch 'master' into update-objc
...
Conflicts:
AsyncDisplayKit/ASCellNode.h
2015-11-02 09:36:46 -08:00
Huy Nguyen
00400e166f
Introduce ASCellNodeDelegate
...
- Cell node automatically notifies the delegate after a relayout (via -setNeedsLayout) that results in a new size. Confirming to ASCellNodeDelegate; ASTableView and ASCollectionView reload the calling cell upon notifications. These views automatically set themselves as delegate of every node.
- The result is that ASCellNode subclasses don't need to manually notify the containing view. Thus, `-relayoutItemAtIndexPath` and `-relayoutRowAtIndexPath` are removed.
- Kittens example is updated to reflect the change.
2015-10-29 16:59:46 +02:00
Adlai Holler
8e104f4887
Merge branch 'master' into update-objc
...
Conflicts:
AsyncDisplayKit/ASCollectionView.h
AsyncDisplayKit/ASDisplayNode.h
AsyncDisplayKit/Details/ASDataController.h
AsyncDisplayKit/Details/UIView+ASConvenience.h
AsyncDisplayKit/Layout/ASLayoutSpec.h
2015-10-28 21:10:27 -07:00
appleguy
7e616756a7
Merge pull request #722 from nguyenhuy/RelayoutCellAPI
...
Add relayout item/row APIs to ASTableView and ASCollectionView
2015-10-25 21:28:20 -07:00
Levi McCallum
722b90f1cf
Implement basic immediate reloadData method on table and collection view
2015-10-22 21:28:44 -07:00
Huy Nguyen
f13f61c2f0
Add relayout item/row APIs to ASTableView and ASCollectionView.
2015-10-07 21:25:07 +03:00
Adlai Holler
8bb9d173dc
Merge branch 'master' into update-objc
...
Conflicts:
AsyncDisplayKit/ASDisplayNode+Subclasses.h
AsyncDisplayKit/ASMultiplexImageNode.h
AsyncDisplayKit/ASViewController.h
AsyncDisplayKit/Details/ASDataController.h
2015-10-05 13:24:16 -07:00
Scott Goodson
a58844379c
Implementation of Synchronous Concurrency features for AsyncDisplayKit 2.0
...
This provides internal features on _ASAsyncTransaction and ASDisplayNode to facilitate
implementing public API that allows clients to choose if they would prefer to block
on the completion of unfinished rendering, rather than allow a placeholder state to
become visible.
The internal features are:
-[_ASAsyncTransaction waitUntilComplete]
-[ASDisplayNode recursivelyEnsureDisplay]
Also provided are two such implementations:
-[ASCellNode setNeverShowPlaceholders:], which integrates with both Tables and Collections
-[ASViewController setNeverShowPlaceholders:], which should work with Nav and Tab controllers.
Lastly, on ASDisplayNode, a new property .shouldBypassEnsureDisplay allows individual node types
to exempt themselves from blocking the main thread on their display.
By implementing the feature at the ASCellNode level rather than ASTableView & ASCollectionView,
developers can retain fine-grained control on display characteristics. For example, certain
cell types may be appropriate to display to the user with placeholders, whereas others may not.
Follow-up work will include unit tests, revisiting names, and the header locations of definitions.
2015-09-27 19:14:36 -07:00
Steven Ramkumar
d09888f9c2
Add a indexPathForNode: to ASTableView
2015-09-22 12:09:56 -07:00
Adlai Holler
814f72535c
Add nullability annotations for public API
2015-09-16 15:21:35 -07:00
Huy Nguyen
2d575fcafc
Relayout table view cell nodes if there is a mismatch between content view size and the node's constrained size
...
- Above is the generic case. Correctly handling it means relayout when the table view enters or leaves editing mode is solved as well.
- Async data source API removal: In a table view, cell nodes should always fill its content view and table view widths. Thus async data source can no longer provide custom constrained size for cell nodes. This removal allows table view to better handle relayout.
- Some more tests are added to ASTableViewTests to check against use cases handled in this diff.
2015-09-16 11:41:34 +03:00
Huy Nguyen
7dc9b7fc40
Fix appledoc warnings.
2015-09-15 00:58:48 +03:00
Huy Nguyen
a3c2dbf8cd
Table and collection views' async data source can provide different constrained size per node. And because the size is of type ASSizeRange, it has a min size that is very helpful in many cases..
2015-08-12 22:45:08 +03:00
Ethan Nagel
bf0766169b
PR Feedback: Require main thread for all edit commands, various cleanup.
2015-07-20 22:08:19 -07:00
Ethan Nagel
f497639124
Add support automatically adjusting the content offset to UITableView as well as support for performing endUpdates with no animations. Additionally, there are critical bug fixes for ASDataController (begin/end updates delegates not called in correct order) and ASRangeController (failure to fully refresh internal state when inserts or delete are made.)
2015-07-20 14:05:56 -07:00
Huy Nguyen
3992e9b09b
[appledoc] Fix all remaining warnings.
2015-07-12 17:27:44 +07:00
Huy Nguyen
cfac6c992a
[appledoc] Fix appledoc warnings. ( #553 )
2015-07-10 19:02:04 +07:00
Ethan Nagel
abd725d8c1
update documentation for reloadData:completion
2015-03-27 18:14:05 -07:00
Ethan Nagel
3f509dbd2f
add completion block to reloadData methods
2015-03-26 16:32:44 -07:00
Nadine Salter
a79b771a85
Remove the nil-asyncDelegate proxy.
...
Fixes #349 .
2015-03-11 17:43:45 -07:00
Ryan Nystrom
6588e7b665
Make data locking API optional
2015-03-04 10:13:32 -08:00
Ryan Nystrom
8d7fe334e2
Revisions based on feedback
2015-02-26 22:29:13 -08:00
Ryan Nystrom
b3ae15858a
Unit tests for batch fetching
2015-02-26 22:26:25 -08:00
Ryan Nystrom
1f8001a104
ASCollectionView batch API
2015-02-26 22:24:46 -08:00
Ryan Nystrom
09ade3dd00
ASTableView batch API and context object
2015-02-26 22:23:32 -08:00
Ryan Nystrom
4fa03a01d1
Functioning Preload range
...
Refactor how we do ranges so they can be arbitrarily managed. Introduce the concept of a preload range.
2015-02-26 15:41:32 -08:00
Ryan Nystrom
9c877c51af
Support for dynamic ranges
...
This refactors how we do ranges and implements tuning parameters for a "Render" range and a "Preload" range
2015-02-26 15:40:21 -08:00
Nadine Salter
b023cfbb2a
Merge pull request #303 from facebook/enable_async_data_fetching
...
Move ASTableView & ASCollectionView data fetching to background thread
2015-02-23 15:25:36 -08:00