189 Commits

Author SHA1 Message Date
Jack Flintermann
1b25cdd1eb clean up compile sources phase 2015-09-16 19:45:00 -04:00
Adlai Holler
b1dfaa1eff Update project indentation settings 2015-09-16 14:17:52 -07:00
Paul Young
77dfd222d3 Merge branch 'master' into compiler-warnings 2015-09-16 12:13:50 -07:00
Paul Young
8426ab1122 Use a shared header for the static library and dynamic framework. 2015-09-16 12:12:21 -07:00
Dasmer Singh
d326c66a72 Merge remote-tracking branch 'upstream/master' 2015-09-16 10:19:26 -04:00
rcancro
b0948ee6ae Changed target membership of ASLayoutOptionsPrivate.h to Private from Public. 2015-09-15 17:18:08 -07:00
rcancro
9c8aaeb17e Move ASLayoutOptionsPrivate to the private folder
fixes:
https://github.com/facebook/AsyncDisplayKit/issues/654
2015-09-15 17:11:20 -07:00
rcancro
4bb8472182 Removed ASBaselineLayoutSpec and made baseline alignment part of ASStackView 2015-09-10 17:29:39 -07:00
rcancro
fe4a2d272f add locks to ASLayoutOptions 2015-09-08 09:50:47 -07:00
rcancro
8263a9f53a Kittens sample working 2015-09-08 09:50:47 -07:00
rcancro
cbaf178950 Hide ASLayoutOptions from the user 2015-09-08 09:50:47 -07:00
rcancro
15b3fd6eab Moved ASLayoutable* properties into ASLayoutOptions class 2015-09-08 09:50:27 -07:00
rcancro
7446578f6f Added method to ASLayoutable to allow a layoutable to override how it will be added to the layoutSpec.
Also moved ASStaticLayoutSpec to act more like the other layouts.
2015-09-08 09:49:40 -07:00
Scott Goodson
08e31e1c37 Created ASCollectionNode with new example project.
Eases support for nesting horizontally scrolling elements within a vertical scroller.

Further changes will improve the API, and optimize handling of the nested working ranges.
2015-09-07 12:54:42 -07:00
Paul Young
64892bc173 Try using a separate umbrella header for the dynamic framework. 2015-08-30 13:40:37 -07:00
rcancro
e991242513 removed "Stack" from baseline related layout names 2015-08-22 19:03:55 -07:00
ricky cancro
5d286930f6 Renamed ASStackText... to ASBaselineStack... 2015-08-22 19:03:54 -07:00
ricky cancro
2d6ddfe32e moved baseline alignment to a layout spec. 2015-08-22 19:03:54 -07:00
rcancro
9036ab8e7d new stack layout spec for text 2015-08-22 19:03:54 -07:00
ricky cancro
ef89f758bc flailing 2015-08-22 19:03:54 -07:00
Roy Marmelstein
26202865ac Adding files that were missing from the framework target 2015-08-04 00:07:30 +02:00
Roy Marmelstein
76e5f794da Fixing framework target build issues - missing info plist and headers 2015-08-03 23:47:53 +02:00
Huy Nguyen
e1fd58268c Clean up #468:
- -layoutSpecThatFits: must return an ASLayoutSpec.
- Move ASDisplayNode's -measureWithSizeRange: redeclaration to ASDisplayNode.h.
- Rename ASStackLayoutChild.h to ASStackLayoutDefines.h.
- Rename ASStaticLayoutSpecDimension.h to ASRelativeSize.h.
- Don't import ASLayout.h in other headers to prevent circular inclusions.
- Explain use cases of ASLayout's initializers.
- Clean up ASInternalHelpers.h.
2015-07-10 19:41:17 +07:00
Dasmer Singh
31eef22111 Merge remote-tracking branch 'upstream/master' 2015-07-08 23:03:29 -04:00
Victor Mayorov
01771f7860 Implemented test for crash in ASCollectionView on reloadData 2015-07-07 23:14:54 -07:00
Bogdan Iusco
a0fcecc469 Fix duplicate symbols on ASIndexPath 2015-07-07 18:23:04 +03:00
Huy Nguyen
2149d44990 Fix naming convetion:
- "Layout node" is changed to "layout spec".
- Update tests.
- Update Kittens sample.
2015-07-01 18:13:44 +07:00
Huy Nguyen
e74823bbee Merge branch 'master' into layout_node 2015-06-28 23:47:09 +07:00
Huy Nguyen
dd29a890df Still support -calculateLayoutThatFits: (and manual layout), for backward compatibility. 2015-06-28 20:31:32 +07:00
Huy Nguyen
95e787b226 Remove stack children type:
- ASLayoutable requires mutable properties that are used when attached to a stack layout.
- Thus, ASLayoutable objects (including ASDisplayNode) can be injected into stack layout directly.
- ASStackLayoutNodeChild no longer needed.
- Tests and Kitten sample updated.
2015-06-26 11:47:42 +07:00
Huy Nguyen
f588bceb4d Introduce ASLayoutable and eliminate ASCompositeNode:
- Both ASDisplayNode and ASLayoutNode conforms to this protocol.
- ASDisplayNode can be embeded directly into layout graph.
- Eliminate ASCompositeNode.
- Fix ASStaticSizeDisplayNode not recpect min constrained size.
- Updated tests.
2015-06-26 09:29:16 +07:00
Huy Nguyen
99fe79339d Simplify ASDimension:
- ASRelativeSize and ASRelativeSizeRange are used only by ASStaticLayoutNode. They are declared in a standalone header.
- ASDimension contains a minimal set of new size types required to use the common layouts. Thus minimize the learning curve.
2015-06-25 11:36:02 +07:00
Huy Nguyen
4ad64b2841 Update tests. 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
323136298c Update visibility of layout header files. Travis should be happy now. 2015-06-25 11:34:36 +07:00
Huy Nguyen
e23a3fe4c2 Add layout tests. 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
Sebastian Rehnby
c215356eb3 Include missing files in iOS Framework target 2015-06-24 15:55:50 +02:00
Paul Young
8fa6667d93 Remove old and add new framework target. 2015-06-23 23:24:55 -07: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
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
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
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
VictorM
645b3c1e4a Added tests to project file 2015-06-11 10:47:13 +03:00
Niels van Hoorn
b8f60e126a Added iOS framework target for Carthage support 2015-06-09 09:16:06 -07:00
dasmer
1c8b425a44 Generate coverage stats using slather/Coveralls 2015-04-20 23:48:49 -04:00
Ryan Nystrom
527a6228a9 Xcode 6.3 support 2015-04-08 16:35:10 -07:00
Nadine Salter
ecd6872814 [tests] AsyncDisplayKitTestHost. 2015-03-23 14:06:38 -07:00
Nadine Salter
b869d025ff [tests] ASSnapshotTestCase. 2015-03-23 14:06:38 -07:00