1400 Commits

Author SHA1 Message Date
Adlai Holler
cf8946cf97 Use fast enumeration when performing collection view update blocks 2015-10-29 10:30:12 -07:00
Adlai Holler
82c1549d8f Fix nullability of ASDisplayNode.name 2015-10-29 09:57:27 -07:00
Huy Nguyen
5b8f7e978d Improve documentation of ASCellNode setNeedsLayout 2015-10-29 16:59:50 +02:00
Huy Nguyen
c7d18a4f1b ASTextCellNode triggers a relayout after a text change 2015-10-29 16:59:50 +02:00
Huy Nguyen
00400e166f Introduce ASCellNodeDelegate
- Cell node automatically notifies the delegate after a relayout (via -setNeedsLayout) that results in a new size. Confirming to ASCellNodeDelegate; ASTableView and ASCollectionView reload the calling cell upon notifications. These views automatically set themselves as delegate of every node.
- The result is that ASCellNode subclasses don't need to manually notify the containing view. Thus, `-relayoutItemAtIndexPath` and `-relayoutRowAtIndexPath` are removed.
- Kittens example is updated to reflect the change.
2015-10-29 16:59:46 +02:00
Huy Nguyen
cd31f884dd Move ASDisplayNodePerformBlockOnMainThread to ASInternalHelpers 2015-10-29 16:09:36 +02:00
Adlai Holler
0e90d0556f Fix UIView+ASConvenience.h merge 2015-10-28 21:15:14 -07:00
Adlai Holler
8e104f4887 Merge branch 'master' into update-objc
Conflicts:
	AsyncDisplayKit/ASCollectionView.h
	AsyncDisplayKit/ASDisplayNode.h
	AsyncDisplayKit/Details/ASDataController.h
	AsyncDisplayKit/Details/UIView+ASConvenience.h
	AsyncDisplayKit/Layout/ASLayoutSpec.h
2015-10-28 21:10:27 -07:00
Adlai Holler
50485663b9 Never use setAnimationsEnabled: so we don't risk corrupting enabledness 2015-10-28 16:09:56 -07:00
Ethan Nagel
a2bc2074cc release any CGColor's set while the node is in a pending state 2015-10-28 11:01:01 -07:00
Levi McCallum
03bd1f4358 Expose ASViewController's constrained size for subclass customization 2015-10-27 11:40:43 -07:00
appleguy
2c8626e1f6 Merge pull request #753 from nguyenhuy/DataControllerSortedTransaction
Sort edit commands during batch updating of table and collection views
2015-10-26 13:40:06 -07:00
Huy Nguyen
6644621c04 Revert "Fix unnecessary relayout if table view width is zero initially"
This reverts commit 75331189455af75b2a5c091d7df75380676a47cf.
2015-10-26 14:28:28 +02:00
Huy Nguyen
72fca5395f Inject an ASDataController class to ASTableView, for testing purposes
- Injection can be done via a new internal initializer. The class will be used by ASTableView to create (and configure) a new data controller.
- ASTableViewTests now injects its own type of ASDataController. This facilitates new ways for testing ASTableView-specific behaviours. The first application is counting the number of times relayoutAllNodes is called on the data controller.
2015-10-26 13:52:49 +02:00
Huy Nguyen
1b500e407f Fix comment in ASTableView 2015-10-26 08:37:17 +02:00
appleguy
6c0818790c Merge pull request #774 from nguyenhuy/FixFailingTestsRelatedToDisplayNodeName
Fix failing tests related to ASDisplayNode name
2015-10-25 23:26:53 -07:00
Huy Nguyen
b77522bf4f Remove debugging names of ASDisplayNode and _ASDisplayLayer
- They are neither considered internally nor in tests. And when they are accidently considered, they cause tests to fail.
- Developers can easily set debugging names themselves whenever needed.
2015-10-26 07:44:59 +02:00
Huy Nguyen
53a3b76d6d Add read-only names to UIView and CALayer
- Backed by name of the underlying ASDisplayNode.
- Remove goofy usages of `setValue:forKey:` in ASDisplayNodeTests and ASDisplayNodeAppearanceTests.
2015-10-26 07:44:05 +02:00
Huy Nguyen
fd0b3aaf52 Revert "Revert "Make ASDisplayNode.name Thread Safe""
This reverts commit 906d7c759b471eda67b95574199b6f91d46b6782.
2015-10-26 06:29:01 +02:00
appleguy
7e616756a7 Merge pull request #722 from nguyenhuy/RelayoutCellAPI
Add relayout item/row APIs to ASTableView and ASCollectionView
2015-10-25 21:28:20 -07:00
Huy Nguyen
ecc5e1ac83 Remove duplicate steps while coalescing changes in _ASHierarchyChangeSet 2015-10-26 06:22:30 +02:00
Huy Nguyen
8745a478ec Add documentation to ASChangeSetDataController. 2015-10-26 06:22:30 +02:00
Huy Nguyen
0315d628c5 Rename as_inverseCompare to asdk_inverseCompare for prefix consistency 2015-10-26 06:22:30 +02:00
Huy Nguyen
5ea4b1b92d Implement ASChangeSetDataController. 2015-10-26 06:22:30 +02:00
appleguy
7a97c5ca00 Merge pull request #751 from rcancro/debugBox
Ascii art visual debugging for ASLayoutSpecs
2015-10-25 21:19:09 -07:00
appleguy
8dddcaa74b Merge pull request #766 from levi/levi/synchronous-reloaddata
Add synchronous reloadData methods to ASTableView and ASCollectionView
2015-10-25 21:05:52 -07:00
appleguy
7d013a70ac Merge pull request #762 from levi/supplementary-views
Respond to supplementary node feedback
2015-10-25 19:45:00 -07:00
appleguy
906d7c759b Revert "Make ASDisplayNode.name Thread Safe" 2015-10-25 19:40:47 -07:00
appleguy
61429357af Merge pull request #768 from Adlai-Holler/ThreadSafeName
Make ASDisplayNode.name Thread Safe
2015-10-25 12:47:07 -07:00
Huy Nguyen
7533118945 Fix unnecessary relayout if table view width is zero initially
- During initial configuration of a table view with a zero size, for each cell, there is a mismatch between the widths of its content view and constrained size. However, don't relayout the cell immediately because an initial data loading will be performed shortly afterward.
2015-10-25 18:54:11 +02:00
Huy Nguyen
52a259a487 Better names in ASTableView. 2015-10-25 18:30:51 +02:00
Adlai Holler
ddf867b106 Use NO rather than nil to fix build on Xcode 7.1 2015-10-24 10:58:25 -07:00
Adlai Holler
0d53a82985 Remove dead flag 2015-10-24 01:20:42 -07:00
Adlai Holler
9b2a68781c Use ASObjectIsEqual to make ASDisplayNode.setName faster when setting the same name repeatedly 2015-10-24 01:18:24 -07:00
Adlai Holler
55e22d2e57 Clean up more remnants of Old Ways 2015-10-24 01:09:31 -07:00
Adlai Holler
3bd54a3c5c Don't hold lock while copying ASDisplayNode.name 2015-10-24 01:03:56 -07:00
Adlai Holler
86c6a4648d Update UIViewBridge documentation to state that bridged properties must be accessed from the main thread once the view or layer is loaded 2015-10-24 00:57:24 -07:00
Adlai Holler
5a8e7daace Implement ASDisplayNode.name separate from CALayer 2015-10-24 00:56:00 -07:00
Levi McCallum
e0dfe8f0c4 Fix method naming 2015-10-23 06:10:06 -07:00
Levi McCallum
722b90f1cf Implement basic immediate reloadData method on table and collection view 2015-10-22 21:28:44 -07:00
Levi McCallum
c33d6efa8a WIP synchronous reload data on collection view 2015-10-22 21:28:30 -07:00
Levi McCallum
6569893c23 Reset inspector selector implementation cache correctly 2015-10-22 18:54:07 -07:00
Levi McCallum
e9708633bc Remove stubbed collection view layout setter behavior 2015-10-21 23:17:38 -07:00
Levi McCallum
e8ce7fcbb2 Clean up caching of collection view delegate selectors on the inspector 2015-10-21 23:17:38 -07:00
Levi McCallum
084d60883b Add assertion to flow layout inspector down casting 2015-10-21 23:17:38 -07:00
Levi McCallum
db0a0326d7 Rename layoutDelegate to layoutInspector in ASCollectionView 2015-10-21 23:17:38 -07:00
Levi McCallum
45ff74b604 Remove array fallback on editing node index paths 2015-10-21 23:17:38 -07:00
Levi McCallum
5736e7c2d2 Clarify editing transaction documentation 2015-10-21 23:17:37 -07:00
Levi McCallum
5645724984 Use pointer comparison helpers for string equality 2015-10-21 23:17:37 -07:00
Levi McCallum
ad82c72eb4 Cache flow layout delegate in local variable 2015-10-21 23:17:37 -07:00