Huy Nguyen
259bbf22bc
Fix naming conventions on equal and resolve methods of new size types.
2015-06-25 11:34:37 +07:00
Huy Nguyen
93564899fd
Remove Auto size type.
2015-06-25 11:34:37 +07:00
Huy Nguyen
810bc3ab84
Rename ASLayoutNode's -computeLayoutThatFits to -calculateLayoutThatFits.
2015-06-25 11:34:37 +07:00
Huy Nguyen
64e2323a4e
Remove ASLayoutNodeSize:
...
- ASLayoutNode no longer has 'size' constraint during its initialization..
- ASLayoutNode no longer needs parentSize to calculate its layout.
2015-06-25 11:34:36 +07:00
Huy Nguyen
90a78684c9
Revert to using ASDisplayNodeSubclassOverridesSelector, to minimize changes and provide a bit of convenience within ASDisplayNode.
2015-06-25 11:34:36 +07:00
Huy Nguyen
aea91fff86
Fix typo in ASDisplayNode.
2015-06-25 11:34:36 +07:00
Huy Nguyen
abe98d5b09
Integrate new layout nodes to the framework.
...
- Introduce ASLayoutNode and its subclasses.
- ASDisplayNode measures its ASLayoutNode and cache the result (ASLayout). Calculated size and position of each subnode can be retrieved from the calculated layout.
- Custom nodes need to override -layoutNodeThatFits:(CGSize) instead of -calculateSizeThatFits:(CGSize).
- Custom nodes do not need to layout its subnodes (in -layout:) anymore. ASDisplayNode can handle the job most of the time, by walking through its layout tree.
- ASCompositeNode is used to embed (display) subnodes to a node's layout. That way, each subnode will also be measured while the parent node is measuring. And the parent node knows where its subnodes are within its layout.
2015-06-25 11:34:35 +07:00
Huy Nguyen
f8531f467d
Add Layout nodes.
...
- The code is forked from LayoutComponents in ComponentKit.
- Public interfaces are modified to be strictly Objective-C. As a result, users are not forced to switch to Objective-C++, the linker can happily compile and Swift fans can continue using the mighty ASDK.
2015-06-25 11:32:30 +07:00
Victor Mayorov
a299a5b550
Implemented UIAccessibilityIdentification for ASDisplayNode
2015-06-24 11:03:51 -07:00
Rene Cacheaux
0b8f10e488
Removes UICollectionViewFlowLayout requirement. This allows custom collection view layouts.
2015-06-23 13:39:12 -05:00
appleguy
e5f2f820c4
Merge pull request #449 from nrcmedia/master
...
Added iOS framework target for Carthage support
2015-06-23 10:51:23 -07:00
Rene Cacheaux
60e676a38a
Adds ASCollectionViewLayoutController and convenience CGRect/ASScrollDirection functions. Fixes default collection view range tuning parameters for Preload and Render ranges; values were flipped.
2015-06-23 07:30:13 -05:00
Rene Cacheaux
4aa796d894
Merge branch 'master' into CollectionViewLayoutSupport
2015-06-21 23:17:41 -05:00
appleguy
607367aacf
Merge pull request #496 from facebook/DataControllerCrash
...
Improvements to thread safety during closely spaced edit events.
2015-06-21 21:16:05 -07:00
Scott Goodson
c700618862
Improvements to thread safety during closely spaced edit events.
...
This applies primarily when beginUpdates / endUpdates is not used.
Due to user interaction-driven edits, like reloads or adding content
at the bottom, sometimes this is unavoidable in app design and thus
critical.
I have a diff in flight to make ASDataController / ASRangeController
robust against very aggressive thrash testing, which will be added
both to the unit test suite and this new example project.
2015-06-21 21:04:09 -07:00
Rene Cacheaux
777b48cc33
Adds layout controller for collection views. This new layout controller leverages UICollectionViewLayout's layoutAttributesForElementsInRect in order to calculate index paths for items in AsyncDisplayKit ranges. Flow layout is still a requirement in order to test the waters.
2015-06-21 18:37:00 -05:00
Rene Cacheaux
0adac6851a
Adds abstract ASLayoutController implementation in preparation for custom layout ASLayoutController implementation.
2015-06-21 13:24:24 -05:00
Rene Cacheaux
33118df73b
Merge branch 'master' into CollectionViewLayoutSupport
2015-06-21 11:45:56 -05:00
Rene Cacheaux
e46c13edc5
Exposes ASCollectionView's ability to determine scroll direction. Scroll direction detection can now support 2-axis collection view layouts. ASCollectionView can now determine scrollable axes.
2015-06-21 11:45:25 -05:00
appleguy
ed4ccfcc7f
Merge pull request #491 from RCacheaux/CollectionViewLayoutSupport
...
Custom Collection view layout prep PR
2015-06-20 20:18:54 -07:00
Scott Goodson
904905189c
Remove -[_ASDisplayView layoutSubviews] and use only -[_ASDisplayLayer layoutSublayers].
...
This helps us support special cases such as ASScrollNode correctly driving the -layout
method for subclasses even though it is based on UIScrollView & can't use _ASDisplayView.
I suspect this will be useful for ASCollectionNode and ASTableNode as well, which would
allow nesting those classes inside of other collections / tables (e.g. horizontal
unit within a vertical unit).
2015-06-20 19:40:01 -07:00
Rene Cacheaux
a7f7620b8c
Turns ASScrollDirection into Option set in preparation for supporting 2-axis collection view layouts. Clears test host target warnings.
2015-06-20 18:25:48 -05:00
Scott Goodson
b4aaf50953
Clean up login in setFrame: for clarity and compactness
2015-06-18 13:16:35 -07:00
Victor Mayorov
0c7b1051d6
Fixed bounds
2015-06-15 18:35:32 +03:00
Victor Mayorov
e94699ae31
Fixed bounds in ASDisplayNode. Bounds.origin shouldn't be affected by -[ASDisplayNode setFrame:] method.
2015-06-15 18:30:44 +03:00
Scott Goodson
ba5a6e15c0
Disable asyncDataFetching in ASTableView and ASCollectionView init methods.
...
It's currently unreliable for some use cases that issue editing calls while
content is displayed or being interacted with. The performance gain is not
sufficient to sacrifice correctness for the clients that hit this issue,
so it will remain off until fully resolved.
2015-06-14 19:59:39 -07:00
Scott Goodson
c50f3b9cad
Support transparent (e.g. clearColor) background for precomposited trees.
2015-06-14 17:30:42 -07:00
Joost van Dijk
bd7941507b
Use a zero origin for root container node frame during rasterization
2015-06-13 20:51:58 +02:00
VictorM
2c74904368
Fixed crash with deallocated CGImageRef
2015-06-11 10:42:28 +03:00
Victor Mayorov
9c20edb310
Added checking that sessionTask hasn't been added during creation of previous one
2015-06-10 17:58:35 +03:00
Victor Mayorov
7359e2255d
Added synchronisation for sessionTask property
2015-06-10 17:50:21 +03:00
Victor Mayorov
7167e4a589
Fixed ASBasicImageDownloader to handle multiple request with the same URL
2015-06-10 15:38:51 +03:00
Niels van Hoorn
b8f60e126a
Added iOS framework target for Carthage support
2015-06-09 09:16:06 -07:00
appleguy
2bc0da021f
Merge pull request #439 from eanagel/passthrough-nonlink-touches
...
Add option to pass through touches to non-link text in ASTextNode
2015-06-06 19:25:39 -07:00
Ian Cloutier
45f719fc6c
Create pending nodes set lazily
2015-05-23 12:04:58 -04:00
appleguy
b9597ff96b
Merge pull request #461 from facebook/memoryMethods
...
Updating API names for network range and memory culling before ASDK 1.2 tag.
2015-05-21 22:44:44 -10:00
Scott Goodson
e3f0e66cb3
Updating API names for network range and memory culling before ASDK 1.2 tag.
2015-05-21 22:43:38 -10:00
appleguy
5d0a2849de
Merge pull request #407 from ianolito/fix-placeholder-api
...
Fix handling of pending nodes and placeholder layer
2015-05-21 21:43:07 -10:00
appleguy
8043e36bf6
Merge pull request #430 from eanagel/astableview-programmatic-scrolling-fix-v2
...
Bug Fix - ASTableView sometimes fails to render cell contents when scrolling programmatically.
2015-05-21 12:54:19 -10:00
appleguy
7e50f05dfd
Merge pull request #445 from levi/master
...
Prevent UITableView insertion/deletion animations by default
2015-05-21 12:49:48 -10:00
Levi McCallum
c8ea73b1fe
Communicate conditionals clearly and document methods
2015-05-18 20:03:14 -07:00
appleguy
38ecededaa
Merge pull request #453 from facebook/outlineBorderWidth
...
Set line width on path instead of context.
2015-05-17 17:03:41 -10:00
Scott Goodson
c4cd38bb6e
Set line width on path instead of context.
...
I’m not confident why the original implementation doesn’t work, but
this version is stylistically cleaner regardless. Resolves task #450 .
2015-05-17 17:01:59 -10:00
appleguy
bf84d52bec
Merge pull request #443 from eanagel/astableview-in-xib
...
Allow ASTableView to be loaded in a xib/storyboard
2015-05-16 23:00:50 -10:00
appleguy
079da308ef
Merge pull request #437 from eanagel/ASDataController-release-nodes
...
ASDataController dealloc, ensure cell nodes are not in a superview
2015-05-16 22:49:55 -10:00
appleguy
33c5a72002
Merge pull request #432 from tonklon/master
...
ASTextNode expose exclusion paths
2015-05-16 22:19:47 -10:00
appleguy
d3e4db2c5c
Merge pull request #444 from levi/patch-1
...
Fix typo in ASTableView
2015-05-13 22:55:24 -10:00
Ethan Nagel
d9acd7bb84
More fixes to catch/handle the delegate getting into an invalid state. These changes will allow setting tableView.asyncDataSource/delegate = nil. (Previously this would have no effect in dealloc thanks to ARC magic). Also added some defensive code to help identify the problem earlier.
2015-05-13 11:00:37 -07:00
Ethan Nagel
58402b6af0
change the order we tear things down in setAsyncDelegate/DataSource to avoid a random crash in UIScrollViewAccessibility.
2015-05-12 12:11:05 -07:00
Levi McCallum
1530ef2841
Prevent UITableView insertion/deletion animations by default
...
Fixes #292
2015-05-07 21:53:38 -07:00