566 Commits

Author SHA1 Message Date
Levi McCallum
1f799a6687 Use long-form view block initializer for better Swift support 2015-10-06 09:34:57 -07:00
Adlai Holler
ce97b56580 Sugar 2015-10-05 20:41:21 -07:00
Adlai Holler
c5b5bdd29c Use deep compare when setting image identifiers in ASMultiplexImageNode 2015-10-05 20:34:42 -07:00
Garrett Moon
b1d03f1d58 Address comments 2015-10-05 16:02:01 -07:00
Garrett Moon
d6c107a896 Fix shouldRasterizeSubnodes skipping setting offset and clipping. 2015-10-05 16:02:01 -07:00
Adlai Holler
99b9f73b1a Fix index into size ranges 2015-10-05 11:51:05 -07:00
Adlai Holler
33c07db58c Set node.frame entirely 2015-10-05 11:42:25 -07:00
Adlai Holler
4601fccb5a Optimize ASDataController._layoutNodes 2015-10-05 11:37:29 -07:00
appleguy
67cf6d3951 Merge pull request #705 from facebook/ThreadAffinity
Improved messages for thread affinity and frame transform identity assertions.
2015-10-04 16:24:39 -07:00
Scott Goodson
61bb4f022e Improved messages for thread affinity and frame transform identity assertions. 2015-10-04 11:15:57 -07:00
appleguy
057422d52b Merge pull request #699 from rcancro/staticLayout
Fix static layout to ensure it always considers its sub layout's preferred sizes.
2015-10-04 10:52:02 -07:00
ricky cancro
eb5e670e5d wasn't copying alignSelf 2015-10-02 20:58:52 -07:00
appleguy
897f7210ad Merge pull request #687 from Adlai-Holler/AdvancedPhotos
Advanced Photos Integration
2015-10-02 16:40:58 -07:00
ricky cancro
45a555cdb5 Static layout bug?
I noticed when creating a static layout that the sizeRange of the children was being ignored. The case was:

I had an image as a child of a static layout
The image was set to have an exact range of 90x90
When the static layout was measured, the constrained size came in as 375xInf (the width of the containing node and unbounded)
The static layout computed its final size as 375x90

According to the comments in component kit's header file the static layout  "[c]omputes a size that is the union of all childrens' frames." It appeared that we are only doing that in the unbounded direction. My fix is to do it in both directions.
2015-10-02 15:56:31 -07:00
Adlai Holler
304ec9b543 Refuse to parse ph:// URLs if iOS < 8 for safety 2015-10-02 15:51:32 -07:00
Adlai Holler
d5a6ad2123 Avoid accessing PHImageManager in ASMultiplexImageNode init 2015-10-02 15:41:01 -07:00
appleguy
6d369ff815 Merge pull request #697 from garrettmoon/fixCornerRadius
Corner radius and clipsToBounds should be captured outside block
2015-10-02 15:00:14 -07:00
Adlai Holler
35c118aff0 Merge branch 'master' into AdvancedPhotos
Conflicts:
	AsyncDisplayKit/ASMultiplexImageNode.mm
2015-10-02 12:45:49 -07:00
Adlai Holler
de1f9788f3 Simplify creation of Photos Framework NSURLs in ASMultiplexImageNode 2015-10-02 12:44:21 -07:00
Garrett Moon
c90708a25b Corner radius and clipsToBounds should be captured outside block 2015-10-02 09:30:49 -07:00
appleguy
fd88522f84 Merge pull request #636 from nguyenhuy/fixSetNeedsLayout
Use getters and setters while adjusting position of a node
2015-10-01 18:08:28 -07:00
Huy Nguyen
22fba5a108 Revert "Use getter and setter of other properties in ASDisplayNode's frame setter."
This reverts commit 93e53bbd87077c1a058dd80ae587f5bff2b36047.
2015-10-01 11:13:49 +03:00
appleguy
c8518c7fa6 Merge pull request #689 from facebook/Synchrotron
Implementation of Synchronous Concurrency features for AsyncDisplayKit 2.0
2015-09-28 14:49:13 -07:00
Scott Goodson
a58844379c Implementation of Synchronous Concurrency features for AsyncDisplayKit 2.0
This provides internal features on _ASAsyncTransaction and ASDisplayNode to facilitate
implementing public API that allows clients to choose if they would prefer to block
on the completion of unfinished rendering, rather than allow a placeholder state to
become visible.

The internal features are:
-[_ASAsyncTransaction waitUntilComplete]
-[ASDisplayNode recursivelyEnsureDisplay]

Also provided are two such implementations:
-[ASCellNode setNeverShowPlaceholders:], which integrates with both Tables and Collections
-[ASViewController setNeverShowPlaceholders:], which should work with Nav and Tab controllers.

Lastly, on ASDisplayNode, a new property .shouldBypassEnsureDisplay allows individual node types
to exempt themselves from blocking the main thread on their display.

By implementing the feature at the ASCellNode level rather than ASTableView & ASCollectionView,
developers can retain fine-grained control on display characteristics.  For example, certain
cell types may be appropriate to display to the user with placeholders, whereas others may not.

Follow-up work will include unit tests, revisiting names, and the header locations of definitions.
2015-09-27 19:14:36 -07:00
Huy Nguyen
a94cd9dd99 Remove externalCompletedNodes getter in ASDataController. 2015-09-28 00:18:49 +03:00
Huy Nguyen
e619edcd86 Ensure data consistency between ASDataController and its delegate while executing update transactions. 2015-09-27 22:59:36 +03:00
Adlai Holler
5f49e0f67d If Photos framework image is delivered on main queue, dispatch async to background queue 2015-09-26 19:50:36 -07:00
Adlai Holler
f6fe3b07d8 Request and receive images in background queue 2015-09-26 19:17:43 -07:00
Adlai Holler
ffa0829fc9 Update & document changes to ASPhotosFrameworkImageRequest handling of PHImageRequestOptionsDeliveryMode 2015-09-26 18:41:38 -07:00
Adlai Holler
bf88bd8e19 Rename image request class, add deliveryMode into the request params 2015-09-26 13:40:00 -07:00
Adlai Holler
06556d04a3 ASMultiplexImageNode uses high quality format when requesting images 2015-09-25 15:54:17 -07:00
Adlai Holler
e787c40411 Only parse photos URL after we check the scheme 2015-09-25 15:45:14 -07:00
Adlai Holler
bbf9550e08 Use ASPhotosImageRequest in ASMultiplexImageNode, in a backwards-compatible way 2015-09-25 15:41:35 -07:00
Adlai Holler
ee0c027ba6 Build photos image request class and tests 2015-09-25 15:25:37 -07:00
appleguy
c824644482 Merge pull request #685 from facebook/ASTableViewStressTestFix
Fix simple issue with ASTableViewStressTest, make Table / Collection handle changes to dataSource / delegate.
2015-09-24 20:14:51 -07:00
Scott Goodson
ee4b771d5d Fix simple issue with ASTableViewStressTest, make Table / Collection handle changes to dataSource / delegate. 2015-09-24 19:59:12 -07:00
Scott Goodson
47be24037d Reduce _ASAsyncTransaction allocations by ensuring nodes without display methods don't create them. 2015-09-24 19:26:00 -07:00
rcancro
52091eb589 Placeholder bug in ASEditableTextNode
When setting a default placeholder and an attributedString before `_textKitComponents.textView` was created, the placeholder and the string were both appearing in the text node.

`_updateDisplayingPlaceholder` is called in `setAttributedString`, but since  `_textKitComponents.textView` is nil the placeholder was not hidden. Calling `_updateDisplayingPlaceholder` after `_textKitComponents.textView` loads fixes this.
2015-09-23 16:11:46 -07:00
appleguy
7dbb07161f Merge pull request #674 from adly-holler/editable-text-assert-viewbacked
Assert that ASEditableTextNode stays view-backed
2015-09-22 13:51:16 -07:00
Adlai Holler
20c74229a9 Updates from PR 2015-09-22 13:16:59 -07:00
Steven Ramkumar
d09888f9c2 Add a indexPathForNode: to ASTableView 2015-09-22 12:09:56 -07:00
Adlai Holler
e9f463da73 Use the right name 2015-09-21 00:16:02 -07:00
Adlai Holler
a1ffa499cb Assert against the user trying to set isLayerBacked on ASEditableTextNode 2015-09-21 00:15:03 -07:00
Adlai Holler
efe198e814 Use ceilSize in ASEditableTextNode 2015-09-20 21:18:06 -07:00
Adlai Holler
4ef2e572e6 Elevate ceilPixel functions to ASTextNodeTextKitHelpers.h, add ceilSize 2015-09-20 21:17:24 -07:00
appleguy
ca9b1caca4 Merge pull request #672 from adly-holler/fix-collectionview-update-crash
Fix collection view data inconsistency
2015-09-20 11:21:15 +02:00
appleguy
aee6709229 Merge pull request #668 from adly-holler/imagenode-opaque-bg
Fill image context with background color if image node is opaque
2015-09-20 11:06:53 +02:00
Adlai Holler
86c1fa3981 Rename flag, default it to true, shorten some comment lines 2015-09-19 14:21:33 -07:00
Adlai Holler
7cd79e6e6f Tweak comment 2015-09-19 13:43:18 -07:00
Adlai Holler
f0f26d3dab Tweak the new pendingReload flag 2015-09-19 13:40:41 -07:00