30 Commits
Author SHA1 Message Date
Levi McCallum 304df12f71 Add recursive description debugging method to ASLayout (#1975)
* Add recursiveDescription debugging method

* Add recursive description implementation

* Add LayoutableObject to ASLayout description
2016-07-24 15:12:53 -07:00
Levi McCallum c6b17ba7bb Add description to ASLayout (#1973)
* Add description to ASLayout

* Constrained size is a size range, print correctly

* Add missing closing bracket
2016-07-23 20:12:26 -07:00
Scott Goodson 012c927cd8 [ASLayout] Small optimization to eliminate one method call in an extremely hot codepath.
This was observed with quantitative profiling results.  We have some opportunities to micro-optimize the layout objects.
2016-07-10 23:02:39 -07:00
appleguy 3b2af7eb6d [Build] Remove Unused Imports across all of AsyncDisplayKit. This uses a feature of AppCode. (#1875)
Details on the tool are here: https://www.jetbrains.com/help/idea/2016.1/optimizing-imports.html
2016-07-09 17:20:59 -07:00
Hannah Troisi c857e809f4 Clean up header comments (for consistent Facebook licensing info) (#1741)
[Licensing] Clean up header comments (for consistent Facebook licensing info)
2016-06-11 23:31:39 -07:00
Levi McCallum 7e8d519a9a Introduce type property to replace layout id check 2016-06-10 12:43:46 -07:00
Levi McCallum a3e8f556a3 Clean up flattening process in ASLayout 2016-06-10 12:43:46 -07:00
Levi McCallum 4149c6b0f5 Move ASLayout frame to a computed property 2016-06-10 12:43:46 -07:00
Levi McCallum f1f45c61a8 Copy dequeued context 2016-06-10 12:43:46 -07:00
Levi McCallum af932e7596 Simplify ASLayout flatten BFS 2016-06-10 12:43:46 -07:00
Levi McCallum f809d4a1c9 Let ASLayout determine if a node should measure 2016-06-05 09:32:48 -07:00
Levi McCallum a004cc7263 Include header 2016-06-05 09:22:46 -07:00
Levi McCallum c469ad273b [ASLayout] Cache constrained size range 2016-06-05 09:22:46 -07:00
Scott Goodson 678c201dbc [ASLayout] Add additional validation step to intercept incorrect values in production and safely zero them out.
These conditions already had assertions, but at runtime, an insufficiently tested and incorrect ASLayoutSpec could
generate values that cause UIKit to enter an infinite loop (e.g. inside of UICollectionView layout validation).
2016-04-10 16:42:22 -07:00
Eric Jensen 17aebcbaba Add a space between the ? and : in ternarys 2016-03-17 10:38:51 -07:00
Levi McCallum 8cdea808ec Expose calculated frame on layout 2016-02-10 11:44:11 -08:00
Levi McCallum 8238da8d00 Fix node deletion and flatten identification issues 2016-02-10 11:44:11 -08:00
Levi McCallum 51977ed162 Identify flattened layouts to allow filtering of non-hierarchy nodes 2016-02-10 11:44:11 -08:00
Levi McCallum 561ae212d9 Wrap implicit hierarchy management in a class enable bit 2016-02-01 17:49:47 -08:00
Levi McCallum 184d1fc059 Switch layout flatten to BFS for node ordering 2016-02-01 17:49:47 -08:00
rcancro 71c44843c8 enforce pixels bounds for ASLayout size/position 2015-12-16 13:14:33 -08:00
Scott Goodson a8924a2977 Fix building test / profile under Xcode 7
It is strictly enforcing this unused variable (when asserts are compiled out).
2015-09-19 20:55:40 +02:00
rcancro c06a6be188 ASLayoutSpec are temporarily mutable and have a more obj-c interface 2015-08-21 16:02:36 -07:00
Huy Nguyen 51f1ed819f - ASDisplayNode now caches calculated layout requested by layout specs.
- constrainedSizeForCalculatedLayout is of type ASSizeRange.
- calculatedLayout is better explained.
- Since ASLayout is cached and reused, its position property is mutable.
2015-07-06 22:08:01 +07:00
Huy Nguyen 2a3753516a Fix naming convention: Rename ASLayout's "children" to "sublayouts". 2015-07-01 18:13:54 +07: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 eb5670032d ASDisplayNode flattens the ASLayout calculated from its layout spec and stores the result. This reduces memory footprint and gives -layout a performance gain. 2015-06-30 20:18:11 +07:00
Huy Nguyen 4799a9d206 Remove ASLayoutChild. ASLayout now has a position property defaults to (NAN, NAN). 2015-06-30 19:42:38 +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 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