Commit Graph
5091 Commits
Author SHA1 Message Date
Sal 344c472349 Return CGSizeZero if ASTextNode's text length or attributed string is nil 2015-08-13 13:53:08 -04:00
Huy Nguyen 1313c11519 preferredFrameSize should be used even if neither -layoutSpecThatFits: nor -calculateSizeThatFits: is overridden by subclassses. 2015-08-13 07:53:00 +03:00
Huy Nguyen c7043a193c When a new preferredFrameSize is set, previously calculated layout should be invalidated so that the size will be picked up in the next layout pass. 2015-08-13 07:52:42 +03:00
Huy Nguyen 7249661990 Improve relayout when constrained size of all nodes is changed:
- In -layoutSubviews of table and collection views, detect changes that cause a different constrained size for nodes, and trigger relayout immediately.
- Orientation change can be handled by this solution. So, no need to observe to its events.
- Update Kittens example to support iPad (easier to catch bugs on these devices) and add a title to navigation bar (looks a bit nicer).
2015-08-13 06:28:47 +03:00
appleguy e93e97ad5f Merge pull request #607 from facebook/OptimizeWorkingRange
Optimization: use only layers for offscreen working range window.
2015-08-12 19:02:00 -07:00
Scott Goodson 3f982b5c9a Switch to use only layers for offscreen working range window.
ASDK layout and display calls don't depend on UIView in any way, so this
will reduce UIView-specific overhead from heirarchy manipulation.
2015-08-12 18:03:47 -07:00
ricky cancro afffd9cfb2 Add baseline support to ASStackLayoutSpec 2015-08-12 16:55:12 -07:00
appleguy 7c78dfdd5f Merge pull request #599 from nguyenhuy/different_constrained_size_per_node
Support different constrained size range per cell, for both tables and collections.
2015-08-12 15:54:55 -07:00
appleguy 57291fa544 Merge pull request #590 from rcancro/master
Add expectedSize to ASNetworkImageNode
2015-08-12 15:51:57 -07:00
ricky cancro 3bc692c938 comments 2015-08-12 15:29:26 -07:00
ricky cancro b4e6591ad8 call super to return preferredFrameSize. 2015-08-12 13:43:10 -07:00
Huy Nguyen a3c2dbf8cd Table and collection views' async data source can provide different constrained size per node. And because the size is of type ASSizeRange, it has a min size that is very helpful in many cases.. 2015-08-12 22:45:08 +03:00
appleguy 356ea9dc7f Merge pull request #604 from garrettmoon/fixCrashForNonFlowLayout
Don't assume flow layout when checking for insetSections
2015-08-12 12:26:20 -07:00
Garrett Moon 592e0301dd cache result of responds to selector 2015-08-12 11:46:46 -07:00
appleguy 91bffc8ca2 Merge pull request #602 from shannonma/merge_fork
Fix race in ASDisplayNodeRespectThreadAffinityOfNode
2015-08-12 11:40:21 -07:00
Garrett Moon 4f4a26d2a3 ASDK now supports non-flow layouts. We shouldn't be assuming a flow layout. 2015-08-12 11:33:40 -07:00
Shannon Ma c26e9c7e94 Fix race in ASDisplayNodeRespectThreadAffinityOfNode 2015-08-10 16:42:02 -07:00
rcancro 7cc996c190 Merge branch 'master' of github.com:rcancro/AsyncDisplayKit
# Conflicts:
#	AsyncDisplayKit/ASDisplayNode.h
#	AsyncDisplayKit/ASDisplayNode.mm
#	AsyncDisplayKit/ASImageNode.mm
#	examples/Kittens/Sample/KittenNode.mm
2015-08-09 16:43:08 -07:00
ricky cancro b58e8344c0 Add expectedSize to ASNetworkImageNode
ASNetworkImageNode defers to ASImageNode to return its calculatedSize. ASImageNode returns the size of its image. There is a good chance that ASNetworkImageNode hasn't downloaded its image yet when calculatedSize is called, so it returns a size of CGSizeZero.

On top of that, it is possible that the size of the image is not actually the size that we wish to display in our node.

I've added an "expectedImageSize" property that can be used to determine the calculatedSize of an ASNetworkImageNode.
2015-08-09 16:34:44 -07:00
appleguy d401b0e5f6 Merge pull request #593 from shannonma/merge_fork
Fixes for ASTextNode test, setNeedsDisplay and font loading failures
2015-08-08 18:55:00 -07:00
appleguy 368d3af21a Merge pull request #595 from nguyenhuy/external_relayout
Support relayout of cells in ASTableView and ASCollectionView after their size changes.

This allows rotation and cell editing modes to work correctly, as is now supported in the Kittens demo app.
2015-08-08 18:27:18 -07:00
Huy Nguyen 219b659b38 - Automatically relayout cells when editing mode is used.
- Add editing mode to Kitten sample.
2015-08-09 00:45:54 +03:00
Huy Nguyen e657bedd40 Automatically relayout cells after orientation changed. 2015-08-09 00:36:58 +03:00
Shannon Ma 6275219f79 Revert Cocoapod version update 2015-08-07 09:26:53 -07:00
appleguy 8da9ddd884 Merge pull request #598 from nguyenhuy/wrong_implementsInsetSection
Fix _implementsInsetSection of ASCollectionView being check before the asyncDelegate is set
2015-08-05 16:45:56 -07:00
Huy Nguyen 60ed2bca47 Fix _implementsInsetSection of ASCollectionView being check before the asyncDelegate is set. 2015-08-05 17:33:56 +03:00
appleguy f97af9cb26 Merge pull request #594 from nguyenhuy/relayout_same_constrained_size
Support internal relayout
2015-08-04 12:27:30 -07:00
appleguy 936bc2534d Merge pull request #596 from levi/master
Add support for sectionInset in ASCollectionView in property and delegate form
2015-08-04 12:06:04 -07:00
ricky cancro c03ed9a8f4 ASDisplayNode returns requestedLayoutSize by default 2015-08-04 08:12:32 -07:00
appleguy a8ad21e850 Merge pull request #597 from marmelroy/issue-591
Fixing build issues for framework target - Issue #591
2015-08-03 22:32:44 -07:00
rcancro 496cc43337 Updates to expectedImageSize
* renamed property to requestedLayoutSize
* moved property to ASDisplayNode
2015-08-03 22:09:50 -07:00
Roy Marmelstein 26202865ac Adding files that were missing from the framework target 2015-08-04 00:07:30 +02:00
Roy Marmelstein 76e5f794da Fixing framework target build issues - missing info plist and headers 2015-08-03 23:47:53 +02:00
Levi McCallum 5eb75d6bc7 Add support for sectionInset in ASCollectionView in property and delegate form 2015-08-03 14:36:29 -07:00
Huy Nguyen 77b586a7e6 Improvements on internal relayout. 2015-08-03 06:25:23 +03:00
Huy Nguyen 0acfea234f Update comments of setNeedsLayout and setNeedsDisplay of ASDisplayNode. 2015-08-03 02:30:08 +03:00
Huy Nguyen 56768a837a - Support internal relayout, that is a relayout caused by internal layout changes, like subnodes re-arrangement and/or subnodes' size change. The constrained size applied to root node is unchanged.
- Update Kittens example to show how internal relayout is done.
2015-08-02 17:18:45 +03:00
Shannon Ma d5de2a22fd Text node to gracefully fail upon font failure 2015-07-31 12:24:04 -07:00
Shannon Ma 15133fdbf7 setNeedsDisplay must be called on main 2015-07-31 12:11:19 -07:00
Shannon Ma f7a4ca45db Fix ASTextNodeWordKernerTests for Xcode 7/iOS 9 2015-07-31 11:31:10 -07:00
appleguy 16ed66c3a1 Merge pull request #550 from marmelroy/issue-549
Access to underlying UITextView for more configuration options.
2015-07-30 22:04:30 -07:00
ricky cancro eae76d26b7 Add expectedSize to ASNetworkImageNode
ASNetworkImageNode defers to ASImageNode to return its calculatedSize. ASImageNode returns the size of its image. There is a good chance that ASNetworkImageNode hasn't downloaded its image yet when calculatedSize is called, so it returns a size of CGSizeZero.

On top of that, it is possible that the size of the image is not actually the size that we wish to display in our node.

I've added an "expectedImageSize" property that can be used to determine the calculatedSize of an ASNetworkImageNode.
2015-07-30 16:50:11 -07:00
appleguy e76fa2794f Merge pull request #589 from connor/returnKeyType
Add support for configuring `returnKeyType` on ASEditableTextNode.
2015-07-30 15:23:48 -07:00
Connor Montgomery ca5e9e7dc3 Add support for configuring on ASEditableTextNode. 2015-07-30 15:19:00 -04:00
appleguy 5482213e2e Merge pull request #584 from facebook/AssertionsAndTesting
Implement warning assertion for supplementary views in ASCollectionView.
2015-07-25 21:47:16 -07:00
Scott Goodson 46bbe479ae Implement warning assertion for supplementary views in ASCollectionView.
Make sure ASTableViewStressTest passes.  It was sometimes testing a scenario UITableView itself doesn't support.
2015-07-25 21:25:40 -07:00
appleguy f3b8216a10 Merge pull request #582 from eanagel/fix-travis
Attempt to fix travis by specifying cocoapods 0.37.2 explicitly
2015-07-25 09:36:58 -07:00
Ethan Nagel 9b427576f2 Attempt to fix travis by specifying cocoapods 0.37.2 explicitly 2015-07-24 23:22:57 -07:00
Ethan Nagel 6e13c3ebab Attempt to fix travis by specifying cocoapods 0.37.2 explicitly 2015-07-24 23:05:14 -07:00
Roy Marmelstein 6b38000941 A simpler, cleaner implementation 2015-07-22 11:05:27 +02:00