Luke Zhao
818c5bab9c
only adjust constraint size if the datasource doesn't implement ConstrainedSizeForNode
2016-03-01 13:16:10 -08:00
appleguy
c3f7197bf3
Merge pull request #1300 from garrettmoon/skipClearContentsOnNodeMove
...
[ASDisplayNode] Don't clear contents when moving between parent nodes.
2016-03-01 12:03:32 -08:00
appleguy
99e3f45f46
Merge pull request #1297 from maicki/FixRangeModeCrash
...
[ASViewController] Fix crash accessing automaticallyAdjustRangeModeBasedOnViewEvents
2016-03-01 11:44:21 -08:00
appleguy
b6abb347e3
Merge pull request #1299 from rcancro/rendererBug
...
[ASTextNode] Fix bug with constrained size when rendering text the second time
2016-03-01 11:38:43 -08:00
Garrett Moon
6d1732fcbd
Don't clear contents when moving between nodes
2016-03-01 09:57:07 -08:00
rcancro
d4bced1fb5
Fix bug when rendering text the second time
...
A text node's renderer is often invalidated. Save the renderer's constrained size locally so we can use it when creating a new renderer after invalidation.
2016-03-01 08:57:43 -08:00
Michael Schneider
def96ea726
Fix crash accessing automaticallyAdjustRangeModeBasedOnViewEvents property in ASViewController
2016-03-01 06:10:59 -08:00
appleguy
e9fcfefbdd
Merge pull request #1294 from vivqu/batch_fetch
...
[ASCollectionView] Account for contentInset when calculating ASScrollDirection
2016-02-29 22:31:40 -08:00
Huy Nguyen
c64f23725f
Update ASCellNode visibility API
2016-02-29 20:26:16 -08:00
appleguy
afed74f9e0
Merge pull request #1293 from maicki/UpdateInterfaceOnVisibilityChange
...
[ASInterfaceState] Ensure cell visibility is updated if overall Table or Collection becomes invisible.
2016-02-29 19:50:30 -08:00
Vivian Qu
31b576ebcd
Address comment
2016-02-29 17:49:26 -08:00
Vivian Qu
d28c3c27c6
Account for contentInset when calculating ASScrollDirection
2016-02-29 17:10:39 -08:00
Michael Schneider
084e6f82c1
Trigger updating interfaceState for cells in case ASTableView or ASCollectionView becomes visible or invisible
2016-02-29 17:04:25 -08:00
appleguy
07ad27c7f6
Merge pull request #1291 from nguyenhuy/container_object
...
[ASDataController] Performance tuning for array enumeration, etc.
2016-02-29 14:24:17 -08:00
appleguy
f123ed87a1
Merge pull request #1282 from maicki/UpdateCurrentRangeModeAPI
...
[ASRangeController] API to update current range mode for the next range update
2016-02-29 14:20:44 -08:00
Huy Nguyen
6d463daac7
ASDataController improvements
...
- _populateFromDataSourceWithSectionIndexSet doesn't accept a mutanle array but allocate one itself.
- Remove _populateFromEntireDataSourceWithMutableContexts.
- ASIndexedNodeContext executes its block, nil out the block and return the result.
2016-02-29 14:03:40 -08:00
Michael Schneider
568aa6c2fb
Update automatic range mode at the beginning of the update pass to consider new information in a possible next pass
2016-02-29 11:39:50 -08:00
Michael Schneider
b2eaf83264
Ignore call to updateCurrentRangeWithMode: to prevent trigger view creation before node was loaded
2016-02-29 11:39:50 -08:00
Michael Schneider
aca5b14c2b
Move automatic range update to a private API
2016-02-29 11:39:50 -08:00
Michael Schneider
760f4ada91
Add API to ASViewController to automatically adjust the range mode of the containing node based on view events
2016-02-29 11:39:50 -08:00
Michael Schneider
60889f555e
Add API to update the current range mode of a table or collection view range controller
2016-02-29 11:39:49 -08:00
Huy Nguyen
b098d80796
Performance improvements in ASDataController based on @Adlai-Holler comments in #1288
2016-02-29 11:36:48 -08:00
appleguy
ab920aa360
Merge pull request #1290 from nguyenhuy/container_object
...
Follow-up on #1288
2016-02-29 11:05:59 -08:00
Huy Nguyen
eadb6cbb0a
Fix wrong memory attribute for indexPath attribute in ASIndexedNodeContext
2016-02-29 09:33:53 -08:00
appleguy
2a89c1d3d6
Merge pull request #1288 from nguyenhuy/container_object
...
[ASDataController] Introduce ASIndexedNodeContext for efficiency and simplicity in managing nodes, indexPaths, and their constraints.
2016-02-29 01:10:38 -08:00
Huy Nguyen
54cde1a3db
Introduce ASIndexedNodeContext
...
- It is a container object that holds enough information to construct and measure a cell node
- All information is gathered on main thread. This allows ASDataController to capture the correct state of its data source before going to background.
2016-02-29 01:00:16 -08:00
Scott Goodson
5e35ef7938
[ASDisplayNode] Ensure display is triggered properly even before layers are onscreen (in display range).
2016-02-29 00:46:45 -08:00
appleguy
875ce9fc7b
Merge pull request #1287 from facebook/ArrayCopyOptimization
...
[ASDisplayNode] Optimize -setNeedsDisplay, deep mutable array copies.
2016-02-28 22:17:51 -08:00
Scott Goodson
eac85b6c9a
[ASDisplayNode] Optimize -setNeedsDisplay, deep mutable array copies.
...
These optimizations are surprisingly impactful. -setNeedsDisplay being called
for every node triggered cancelAsyncDisplay, locking, and memory management overhead
that is completely avoidable because Core Animation triggers first display automatically.
The mutable array copy optimizations reduced this key cost by over 10x, from 52ms to 5ms
on an iPad Air 2 / A8X with a real-world test case.
2016-02-28 20:54:56 -08:00
appleguy
3671f5cbc5
Merge pull request #1283 from Adlai-Holler/AHPendingStateLocking
...
[ASPendingStateController] Relinquish Lock Before Applying Pending States
2016-02-26 23:53:08 -08:00
Adlai Holler
324b633b0f
[ASPendingStateController] Don't hold lock while flushing
2016-02-26 23:14:58 -08:00
appleguy
fd3eca9091
Merge pull request #1281 from ejensen/VideoNodeAssetCast
...
[ASVideoNode] AVAsset type cast safety
2016-02-26 22:50:44 -08:00
appleguy
f2900cbee7
Merge pull request #1276 from maicki/improve-astextcellnode
...
[ASTextCellNode] Add several new APIs for customizability of this simple cell component.
2016-02-26 22:50:20 -08:00
Eric Jensen
cb1579e8af
Check the AVAsset's type before casting to an AVURLAsset
2016-02-26 11:00:27 -08:00
Michael Schneider
45c616d916
Improve ASTextCellNode customization
2016-02-26 06:31:09 -08:00
appleguy
a3576d5d61
Merge pull request #1280 from davidlawson/master
...
Added NSArray+Diffing.m and ASDefaultPlayButton.m to iOS Framework target
2016-02-25 19:21:57 -08:00
appleguy
60b68f33de
Merge pull request #1271 from maicki/update-examples
...
[Examples] Improvements to the sample apps - adopt node blocks, general cleanup.
2016-02-25 19:15:55 -08:00
appleguy
d3f75b2281
Merge pull request #1279 from facebook/OpaqueAndBGDisplay
...
[ASDisplayNode] Bridge should trigger display when opacity or bg color change.
2016-02-25 19:04:05 -08:00
David Lawson
307872099f
Added NSArray+Diffing.m and ASDefaultPlayButton.m to iOS Framework target
2016-02-26 13:52:53 +11:00
Scott Goodson
89516129a4
[ASDisplayNode] Bridge should trigger display when opacity or bg color change.
2016-02-25 18:25:39 -08:00
appleguy
93575b20e9
Merge pull request #1277 from nguyenhuy/layout_transition_for_cell_node
...
[ASCellNode] Notify layout delegate during layout transition
2016-02-25 14:56:05 -08:00
appleguy
6f12444be0
Merge pull request #1265 from rcancro/scaleFactor
...
[ASTextNode] Stopped trying to cache the currentScaleFactor
2016-02-25 14:54:19 -08:00
appleguy
6e85ad8170
Merge pull request #1274 from Adlai-Holler/AHMapNodeVendAnnotations
...
[ASMapNode] Promote annotations to a Formal Property
2016-02-25 14:46:33 -08:00
Huy Nguyen
0fe774511c
ASCellNode notifies its layout delegate during layout transition
2016-02-25 12:19:14 -08:00
appleguy
7d9ad723fe
Merge pull request #1275 from nguyenhuy/fix_didCompleteTransitionLayout
...
Fix didCompleteLayoutTransition
2016-02-25 11:30:39 -08:00
Huy Nguyen
640b6bdf4a
Fix mismatch between the signature of didCompleteLayoutTransition and its implementation
2016-02-25 10:58:36 -08:00
Adlai Holler
60f5ba2d17
Simplify ASMapNode.setAnnotations
2016-02-25 10:40:38 -08:00
Adlai Holler
2fbc7b0942
Make ASMapNode vend its annotations
2016-02-25 10:32:13 -08:00
appleguy
e53c0c2d8c
Merge pull request #1272 from nguyenhuy/fix_diffing_algo
...
[Utilities] Fix diffing algorithm not using custom comparison block
2016-02-24 20:48:19 -08:00
Huy Nguyen
32a8f9c831
Assert comparison block in diffing algorithm
2016-02-24 20:42:18 -08:00