137 Commits
Author SHA1 Message Date
Michael Schneider bcd91f18ce Remove ASLayoutOptions locking 2016-04-22 19:54:40 -07:00
Michael Schneider 9fdce828c1 Small improvements for ASLayoutSpec
- Add nullable for returning children
- Store default child and children as properties
- Use vector for creating final children
2016-04-15 07:11:24 -07:00
Scott Goodson 8ccef1e99f [ASEnvironment] Fix incomplete gating of upward propagation of layout properties (disabled for now). 2016-04-11 20:34:24 -07:00
Michael Schneider 45d50624d1 Fix disabled state propagation for final layoutable 2016-04-11 17:41:48 -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
Levi McCallum 25096117e7 Prevent ASInsetLayoutSpec from creating a computed layout when child is nil
Reviewers: scottg, schneider, ricky, garrett

Reviewed By: garrett

Subscribers: garrett, jenkins

Differential Revision: https://phabricator.pinadmin.com/D83683

JIRA Issue(s): BRIO-4729
2016-04-06 17:05:49 -07:00
Michael Schneider 5ba756eac7 Fix comments about maximum number of extended values in ASLayoutableExtensibility 2016-04-05 07:44:28 -07:00
Hannah Troisi dbad1c38e5 [ASEnvironment - Layout] Fixes to upward propagation of ASLayoutable properties. 2016-04-02 15:03:43 -07:00
Michael Schneider 20ee9bca8d Rename ASEnvironmentStateCreate to ASEnvironmentStateMakeDefault 2016-03-31 20:43:20 -07:00
Michael Schneider 5baab95506 Add up propagation of ASEnvironmentLayoutOptionsState in ASLayoutSpec while setting a child 2016-03-31 20:43:20 -07:00
Michael Schneider f46f5640ff Add improvements
- Remove defaults for ASEnvironmentLayoutOptionsState and ASEnvironmentHierarchyState
- Add locking for ASEnvironmentLayoutExtensibilityForwarding
- Other smaller improvements
2016-03-31 20:43:20 -07:00
Michael Schneider 4e757f0969 General improvements
- Refactor naming of ASEnvironmentCollection to ASEnvironmentState
- Remove struct pointers
- Move ASEnvironmentStatePropagation to a enum class
- Move merge functions to pure functions
- Move ASLayoutOptionsForwarding and ASLayoutableExtensibility into ASLayoutSpec and ASDisplayNode
- Remove ASLayoutableSetValuesForLayoutable and move into explicit classes (ASDisplayNode, ASTextNode)
2016-03-31 20:43:20 -07:00
Michael Schneider 65b4961802 Add extensibility support for ASEnvironmentLayoutOptionsState 2016-03-31 20:43:20 -07:00
Michael Schneider 96df35e41a Initial commit for ASEnvironment 2016-03-31 20:43:20 -07:00
Huy Nguyen 387f3bf634 Properly lock layoutableContextMap
Signed-off-by: Huy Nguyen <huy@pinterest.com>
2016-03-29 13:40:57 -07:00
Huy Nguyen 7bb3015950 Rename ASLayoutableContext methods 2016-03-27 17:38:41 -07:00
Huy Nguyen 81d26994c5 Introduce ASLayoutableContext
- The struct is mapped to ID of the current thread and used by subnodes to decide whether they should proceed measurement.
2016-03-27 17:09:59 -07:00
Scott Goodson eed812dcdf [ASRangeController] Slight tweaks to the default Full ranges, for memory savings in multi-tabbed apps with still-excellent preloading consistency. 2016-03-23 23:36:59 -07:00
Eric Jensen 12da9ac6a9 Improve Swift compatibility of ASHorizontalAlignment & ASVerticalAlignment by using consistent naming 2016-03-21 11:16:28 -07:00
Sam Stow 086bd8a52b [ASRelativeLayoutSpec] New core layout spec type: Relative Position, now powers Center as well.
This spec allows positioning a child at any 9-part box position (corners, edges, or center).
2016-03-19 22:37:02 -07:00
Eric Jensen 17aebcbaba Add a space between the ? and : in ternarys 2016-03-17 10:38:51 -07:00
appleguy d9ef0922d8 Merge pull request #1354 from ejensen/cleanup
[Refactoring] Objective-C 2.0 / Modern syntax for arrays, dictionaries, numbers; logic simplification
2016-03-17 01:06:33 -07:00
Eric Jensen 33fda7ab49 - Use modern Objective-C syntax.
-  Simplify comparisons.
-  Remove dead stores.
2016-03-15 22:34:29 -07:00
Eric Jensen ddd5ff1f75 Correct spelling errors 2016-03-15 21:56:51 -07:00
appleguy a4e3ba49b4 Merge pull request #1349 from levi/patch-8
[ASDimension / ASSizeRange] Add ASSizeRangeMakeExactSize method
2016-03-11 21:21:09 -08:00
Huy Nguyen fa8f2f4429 Implement async transition 2016-03-11 18:56:58 -08:00
Levi McCallum 52391dcc27 Change method name in implementation 2016-03-09 10:42:56 -08:00
Levi McCallum a07f7b73f0 Change method name in header 2016-03-09 10:42:35 -08:00
Levi McCallum d4a0c34d86 Add ASSizeRangeMakeWithExactCGSize method 2016-03-09 10:39:46 -08:00
Levi McCallum 167b7d404e Add header for extern ASSizeRangeMakeWithExactCGSize 2016-03-09 10:38:25 -08:00
Garrett Moon 6d9720bd18 Wrong name in header 2016-02-20 17:33:29 -08:00
Levi McCallum 5cf5cb8452 Delegate layout frame calculation to sublayout method 2016-02-10 11:44:12 -08: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
Scott Goodson 0feaa2a368 Improvements to the efficiency of recursivelySetInterfaceState: and the beta range controller. 2016-01-10 02:40:47 -08: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 a2cf2a88e6 Overhaul header files / includes to eliminate circular references that Xcode 7 is angry about. 2015-12-25 19:22:00 -08:00
Scott Goodson 882d4b336e Merge branch 'master' into pr/664 2015-12-25 14:32:41 -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 69767d558e Merge branch 'master' into update-objc
Conflicts:
	AsyncDisplayKit/Private/ASDisplayNode+FrameworkPrivate.h
2015-12-22 00:28:21 -05:00
Scott Goodson c6759671e6 Merge branch 'master' into RemoveWorkingWindow 2015-12-18 18:25:14 -08:00
appleguy bc6e5fee1a Merge pull request #949 from rcancro/roundMin
Do not round when resolving relative dimensions
2015-12-17 15:34:12 -08:00
rcancro c6f4aff4ef Do not round when resolving relative dimensions
When laying out a node I got to a point where the constrained width was min 132.22222pts and max width was 100%. When resolving the relative size to pts it rounded to 132pt. This caused an assert in ASSizeRangeMake because the min width (132.222pt) was bigger than the max width (132pt)
2015-12-17 15:20:40 -08:00
rcancro 71c44843c8 enforce pixels bounds for ASLayout size/position 2015-12-16 13:14:33 -08:00
Adlai Holler 1fd65c2f25 Annotate ASAsciiArtBoxCreator.h 2015-12-01 21:57:45 -08:00
Adlai Holler fdfe18873a Merge branch 'master' into update-objc
Conflicts:
	AsyncDisplayKit/ASDisplayNodeExtras.h
	AsyncDisplayKit/Details/ASTextNodeRenderer.h
	AsyncDisplayKit/Details/ASTextNodeShadower.h
2015-12-01 16:45:25 -08:00
Scott Goodson 7f59beb195 Initial experimental commit with functioning preloading, without the working window. 2015-11-30 19:01:57 -08:00