14914 Commits

Author SHA1 Message Date
Scott Goodson
6220d65747 Property declaration tweak for odd Travis build failure (only on the Tests build). 2015-07-04 20:54:04 -07:00
Scott Goodson
8fa092fb77 Complete overhaul of ASFlowLayoutController.
Introduced ASIndexPath for efficient handling of index paths in C++ vectors,
while maintaining the readability of ".section" and ".row" instead of
".first" and ".second" inside of complicated business logic.

Confirmed that the working range calls are firing appropriately during
ASTableViewStressTest, including the deallocation of the rich text placeholders
provided by ASTextNode.
2015-07-04 20:22:04 -07:00
Andreas Linde
3c17cda93f Remove username in simulator build only
Removing username from paths only makes sense in the simulator
2015-07-03 15:44:15 +02:00
Peter
ef2caa08e2 Stability improvements 2015-07-03 02:05:32 +03:00
appleguy
51297088ce Merge pull request #535 from eanagel/cell-clipsToBounds
Propagate ASCellNode's clipsToBounds value to the __ASTableViewCell
2015-07-01 20:11:38 -07:00
Huy Nguyen
af64f33ed7 Minor changes: remove unncessary imports and add a new line ad the end of ASInternalHelpers.h 2015-07-01 18:36:36 +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
Ethan Nagel
4963a88717 Propagate ASCellNode's clipsToBounds value to the __ASTableViewCell. This helps work around a bug we are seeing in some rare cases (selected background view overlaps other cells if size of ASCellNode has changed.) 2015-06-29 21:22:55 -07:00
Scott Goodson
57465c7fd3 Overhaul ASDataController and extensively test ASTableView.
This diff resolves all known consistency issues with ASTableView and ASCollectionView.
It includes significantly more aggressive thrash-testing in ASTableViewStressTest,
which now passes on a variety of device and simulator configurations.  It also updates
the unit tests run on every commit to ensure any regression is caught quickly.

A few of the salient changes in this diff:
- ASTableView now uses Rene's ASCollectionViewLayoutController, and actually uses a
UICollectionViewFlowLayout without any UICollectionView.  This resolves an issue where
ASFlowLayoutController was generating slightly out-of-bounds indicies when programmatically
scrolling past the end of the table content.  Because the custom implementation is likely
faster, I will revisit this later with profiling and possibly returning to the custom impl.
- There is now a second copy of the _nodes array maintained by ASDataController.  It shares
the same node instances, but this does add some overhead to manipulating the arrays. I've
filed a task to follow up with optimization, as there are several great opportunities to
make it faster.  However, I don't believe the overhead is a significant issue, and it does
guarantee correctness in even the toughest app usage scenarios.
- ASDataController no longer supports calling its delegate /before/ edit operations.  No
other class was relying on this behavior, and it would be unusual for an app developer to
use ASDataController directly.  However, it is possible that someone with a custom view
that integrates with ASDataController and ASRangeController could be affected by this.
- Further cleanup of organization, naming, additional comments, reduced code length
wherever possible.  Overall, significantly more accessible to a new reader.
2015-06-28 18:03:45 -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
appleguy
8beae28b25 Merge pull request #506 from paulyoung/framework-target
Remove old and add new framework target.
2015-06-27 21:58:09 -07:00
appleguy
a654d880c3 Merge pull request #525 from facebook/Domain2
Update the identifier that AsyncDisplayKit uses to label its internal queues (2/2).
2015-06-27 12:11:35 -07:00
Scott Goodson
feba7f8ed1 Update the identifier that AsyncDisplayKit uses to label its internal queues (2/2). 2015-06-27 12:10:58 -07:00
appleguy
447159f08a Merge pull request #524 from facebook/ASDK_Identifier_Domain
Update the identifier that AsyncDisplayKit uses to label its internal queues.
2015-06-27 12:08:28 -07:00
Scott Goodson
8fc79b1d4c Update the identifier that AsyncDisplayKit uses to label its internal queues. 2015-06-27 12:07:40 -07:00
appleguy
1563c5e577 Merge pull request #523 from facebook/DataControllerSerialization
Clean up organization and naming of methods internal to ASDataController.
2015-06-27 11:50:43 -07:00
Scott Goodson
dc19970fe8 Clean up organization and naming of methods internal to ASDataController. 2015-06-27 11:48:55 -07:00
appleguy
a1e14e71ed Merge pull request #522 from facebook/DataControllerAwesome
Clean up ASDataController for readability & API naming consistency.
2015-06-27 11:08:18 -07:00
Scott Goodson
06cfe68cbd Clean up ASDataController for readability & API naming consistency. 2015-06-27 11:06:54 -07:00
Jack Flintermann
5889c7019e basic unit tests 2015-06-27 03:19:52 -04:00
Jack Flintermann
8a200078bd make ASEditableTextField properly subclass responder methods 2015-06-27 03:19:51 -04:00
Jack Flintermann
540eeec79b move UIresponder methods out of UIView bridging category 2015-06-27 03:19:51 -04:00
Jack Flintermann
0b14d42033 add UIResponder methods to ASDisplayNode 2015-06-27 03:19:51 -04:00
Paul Young
7d464fb6b8 Merge branch 'master' into framework-target
Conflicts:
	AsyncDisplayKit.xcodeproj/project.pbxproj
2015-06-26 23:31:43 +01:00
appleguy
da4ae469d8 Merge pull request #514 from eanagel/astableview-programmatic-scrolling-fix-v3
ASTableView programmatic scrolling fix w/contiguous guarantee
2015-06-26 13:18:54 -07:00
appleguy
585a70d72c Merge pull request #511 from stripe-internal/jack-fix-podspec
Exclude ASDealloc2MainObject.h from main spec
2015-06-26 13:09:07 -07:00
Andreas Linde
27e5bb0085 Fix travis link again in readme 2015-06-26 10:21:39 +02:00
Andreas Linde
2d9f087fa9 Increase build number 2015-06-26 10:10:42 +02:00
Andreas Linde
7ef9478647 Merge branch 'release/3.7.1' 2015-06-26 10:08:54 +02:00
Andreas Linde
762a55dded 3.7.1 release and documentation updates 2015-06-26 10:05:37 +02:00
Andreas Linde
efe664fcc3 Redo HockeySDK-Source spec
We can't get a freely configurable podspec to work reliably in all scenarios, so we push back for now and keep that in mind for a full SDK restructuring approach
2015-06-26 09:52:28 +02:00
Andreas Linde
689e14c2e9 Another fix for the podspec resources 2015-06-26 09:09:33 +02: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
Ethan Nagel
ae523f4fce better logic for detecting when the pending index path is before or after the visible index paths 2015-06-25 09:53:36 -07:00
Jack Flintermann
6bf8ec5b03 exclude ASDealloc2MainObject.h from main spec 2015-06-25 10:47:10 -04:00
Lukas Spieß
eb69194218 Use correct path to resources in HockeySDK.podspec 2015-06-25 15:20:19 +02:00
Huy Nguyen
697b9f4c3c Update Kittens example to work with the improved layout system. 2015-06-25 11:36:02 +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
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
65aa677afc ASDisplayNodeCAssertPositiveReal and ASDisplayNodeCAssertInfOrPositiveReal permit CGFLOAT_MAX. 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
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
90a78684c9 Revert to using ASDisplayNodeSubclassOverridesSelector, to minimize changes and provide a bit of convenience within ASDisplayNode. 2015-06-25 11:34:36 +07:00