Commit Graph

553 Commits

Author SHA1 Message Date
appleguy
897f7210ad Merge pull request #687 from Adlai-Holler/AdvancedPhotos
Advanced Photos Integration
2015-10-02 16:40:58 -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 93e53bbd87.
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
Adlai Holler
77490e11c0 ASCollectionView: Suspend updates while reload data is pending 2015-09-19 13:35:57 -07:00
Adlai Holler
d0f4bacc67 ImageNode: fill background more efficiently 2015-09-19 12:23:51 -07:00
Scott Goodson
a8924a2977 Fix building test / profile under Xcode 7
It is strictly enforcing this unused variable (when asserts are compiled out).
2015-09-19 20:55:40 +02:00
Adlai Holler
c872485459 Fill image context with background color if image node is opaque 2015-09-17 21:59:52 -07:00
Adlai Holler
03648d12a8 Clarify ASCellNode docs that it is for use with collection view as well 2015-09-17 12:30:31 -07:00
Huy Nguyen
a864341710 Remove nonnull and nuulable annotations in ASViewController. Travis don't recognize them (yet). 2015-09-17 16:07:43 +03:00
Huy Nguyen
fcd76dbd19 Use nonnull annotation, instead of sanity check, for node property in ASViewController. 2015-09-17 15:59:37 +03:00
Huy Nguyen
72d108cd98 Minor fixes in ASViewController and Multiplex sample. 2015-09-17 15:58:21 +03:00
Huy Nguyen
07c0d78c71 Add ASViewController and update Multiplex sample to use it. 2015-09-17 15:58:21 +03:00
appleguy
21bdbbe12f Merge pull request #665 from jflinter/jack-build-phase-cleanup
Clean up Cocoa Touch framework target
2015-09-17 10:15:21 +02:00
Jack Flintermann
ce33149548 make additional private headers actually private; import all public headers in AsyncDisplayKit.h 2015-09-16 23:31:48 -04:00
Jack Flintermann
ff1be72e04 add module.modulemap 2015-09-16 20:15:48 -04:00
rcancro
7e3a0b3223 Changed copyIntoOptions to copyFromOptions
I thought I already did this. I think copyFrom is a better name.
2015-09-16 14:33:54 -07:00