412 Commits

Author SHA1 Message Date
Scott Goodson
690f90a899 Supplementary nodes must be added to the completed nodes after their measurement completes following individual section reloads. 2015-12-27 15:34:26 -08:00
Scott Goodson
4b560a703a PR #1000 on GitHub! Provide a Beta API to enable the new, high efficiency render-ahead mechanism. 2015-12-26 16:34:44 -08:00
Scott Goodson
a1429ea23b Add ability to enable new rendering range with a class method in ASDisplayNode+Beta.h 2015-12-26 14:22:24 -08:00
Scott Goodson
7dff6ffa14 Re-enable program flow instrumentation for Coveralls. More null-specifiers.
This does cause tests to crash at the end, which unfortunately seems like a known Xcode 7 bug.
2015-12-25 22:13:35 -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
af74f4a1c2 Fix the AsyncDisplayKit tests under Xcode 7! Workaround for unfixed Apple bug with @dynamic on CALayer. 2015-12-25 14:01:18 -08:00
Scott Goodson
7ece41ff64 Delegate definition tweaks for Table and Collection; ensure Table tests run with ARC enabled. 2015-12-24 21:41:12 -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
Scott Goodson
8b3f3351ab Logging for test failures that are only occurring on build server with iOS 8.1 simulator... 2015-12-23 21:53:42 -08:00
Scott Goodson
ca57059322 New ASDelegateProxy class to unify logic for Table & Collection forwarding. Fix dealloc-during-animation crash. 2015-12-23 20:01:52 -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
b8602d1073 Fix ASBasicImageDownloader tests - prevent use of init / new instead of +sharedImageDownloader. 2015-12-20 15:42:57 -08:00
Scott Goodson
92126f0d66 Support surprisingly nice automatic behavior for the unsupported case of view-backed nodes as children of layer-backed ones. 2015-12-19 20:33:28 -08:00
Scott Goodson
bbc0452a7a Improve UIView & CALayer handling of -addSubnode:, and ensure node hierarchies are hooked up even when addSubview: is used directly. 2015-12-19 18:29:05 -08:00
Scott Goodson
578d0f4f78 Final cleanup for initial version of removing the UIWindow-based render range.
The UIWindow mode remains enabled by default, but rendering and the test suite works correctly both enabled and disabled.
2015-12-18 18:47:08 -08:00
Adlai Holler
7079a9cc79 Merge branch 'master' into update-objc
Conflicts:
	AsyncDisplayKit/ASDisplayNode+Subclasses.h
2015-12-13 10:05:03 -08:00
Scott Goodson
6ad1503556 Merge branch 'master' into RemoveWorkingWindow 2015-12-11 22:42:13 -08:00
Scott Goodson
00fe336ae7 Merge branch 'master' into RemoveWorkingWindow 2015-12-11 21:34:45 -08:00
Garrett Moon
941a732fd6 Rename and move ASMainSerialQueue to its own class 2015-12-11 10:53:06 -08:00
Garrett Moon
066596314e Fix deadlock when an editing transaction needs to perform its work on the main thread, and then elsewhere, on the main thread, we block waiting for all editing transactions to finish 2015-12-11 10:45:23 -08:00
Garrett Moon
f94229796c Fixes out of order blocks running on main queue in ASDataController
ASDataController’s completedNodes is accessed by treating the main thread as a serial queue. The ​*problem*​ is, operations can cut in line by being added while on the main thread. I.e. it just calls the block instead of dispatch_async’ing to the main thread. This results in data inconsistency.

To address this, I've added a queue of operations which get run serially (not to be confused with a serial dispatch queue). Instead of running blocks directly on the main thread, if it’s called while not on the main thread, it dispatch_asyncs to the main thread and runs any blocks in the queue. If it ​*is*​ on the main thread, it runs any blocks already in the queue and then runs the block.
2015-12-11 10:45:22 -08:00
appleguy
c9a0a3d46f Merge pull request #918 from levi/master
Inline supplementary kind iteration in data controller
2015-12-07 12:58:25 -08:00
Scott Goodson
88b36f58e7 Ensure an empty array is returned if visibleNodes is called before any nodes are complete. 2015-12-06 21:45:46 -08:00
Levi McCallum
223cac1784 Inline supplementary kind iteration in data controller 2015-12-06 21:31:40 -08:00
appleguy
f6cc2067e9 Merge pull request #917 from levi/master
Ensure that newly inserted section supplementary nodes are added to backing store
2015-12-06 21:25:47 -08:00
Levi McCallum
64da9e7ece Ensure that new section supplementary nodes are inserted into backing store 2015-12-06 20:07:29 -08:00
Scott Goodson
840884272d Introduced ASHierarchyState. Created ASDisplayNode+FrameworkPrivate.h. Fixed deadlock. 2015-12-05 22:20:16 -08:00
Scott Goodson
ee917ae210 Disable verbose logging, re-enable working window to merge WIP and avoid conflicts. 2015-12-01 16:48:59 -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
Levi McCallum
a0c05ebffc Rename CK classes to AS classes 2015-11-30 06:44:53 -08:00
appleguy
937b72b64a Merge pull request #879 from levi/levi/custom-layout-example
Add custom collection view layout example project
2015-11-29 22:14:31 -08:00
Scott Goodson
936730d46b ASInterfaceStateVisible is now being driven by a new ASRangeHandlerVisible. 2015-11-29 13:24:42 -08:00
Scott Goodson
1ed22866b1 Working implementation of ASInterfaceState for Display and FetchData behaviors. 2015-11-28 22:48:30 -08:00
Levi McCallum
36d24950e0 Add custom collection view layout example project 2015-11-27 18:58:44 -08:00
Adlai Holler
628bb7eb3a Revert minor deletion 2015-11-24 16:43:40 -08:00
Adlai Holler
dfc098fc20 Merge branch 'master' into update-objc
Conflicts:
	AsyncDisplayKit/ASCollectionView.h
	AsyncDisplayKit/ASTableView.h
	AsyncDisplayKit/Details/ASLayoutController.h
	AsyncDisplayKit/Details/ASRangeController.h
2015-11-24 16:40:03 -08:00
appleguy
15f718ddc9 Merge pull request #868 from levi/levi/remove-deprecated
Clean up syntax and organization of ASRangeController
2015-11-23 21:24:58 -08:00
Levi McCallum
c6d4ed0dc3 Update documentation on the ASRangeController layoutController property 2015-11-19 18:26:50 -08:00
Levi McCallum
e05c4b7419 Separate range controller delegate methods into separate data source 2015-11-19 16:01:38 -08:00
Levi McCallum
09a2e086b0 Clean up syntax and method ordering in ASRangeController 2015-11-19 14:03:53 -08:00
Levi McCallum
e9a32bfd3c Remove deprecated layout controller methods 2015-11-19 11:48:06 -08:00
Adlai Holler
ecaabc8435 Merge branch 'master' into update-objc
Conflicts:
	AsyncDisplayKit/Details/UIView+ASConvenience.h
2015-11-18 14:17:09 -08:00
Scott Goodson
2a0b9c8e14 Substantially improve behavior of nested Table & Collection Nodes
This ensures memory cleanup happens correctly and introduces a new test project
to support developing new features while stressing tough use cases for correctness.
2015-11-14 15:25:35 -08:00
Adlai Holler
762be97a51 Merge branch 'master' into update-objc 2015-11-13 12:03:30 -08:00
Scott Goodson
bfe908bc8a Fix for behavior difference between CA and UIKit that causes mutation crash 2015-11-09 13:41:25 -08:00
Scott Goodson
40237a52fc Patch for properly tearing down Working Window 2015-11-08 18:24:58 -08:00
Adlai Holler
802011ef97 Merge branch 'master' into update-objc
Conflicts:
	AsyncDisplayKit/ASDisplayNode.h
2015-11-08 18:19:06 -08:00
Scott Goodson
e0f40d5644 Fix unusual cell content blanking issue when making existing cells much taller. 2015-11-07 23:08:53 -08:00