Michael Schneider
3b4e8d732c
Improve way to detect interface state of ASCollectionView and ASTableView
2016-03-16 11:45:22 -07:00
Michael Schneider
19232ac493
Address pull request comments
2016-03-16 11:44:56 -07:00
Michael Schneider
d3ba80ccfd
Improvements for automatic range mode
...
- Only update range mode if visibility changes if the node is not range controlled
- Only change explicitly set range mode if ASRangeController becomes visible
- Return interface state for range controller in ASCollectionView and ASTableView based on if the containing node is range managed
2016-03-16 11:44:56 -07:00
appleguy
b30fa8b2f6
Merge pull request #1373 from maicki/FullRangeModeOnScroll
...
[ASRangeController] Go into full range mode if a scroll happens
2016-03-16 11:33:43 -07:00
Eric Jensen
ddd5ff1f75
Correct spelling errors
2016-03-15 21:56:51 -07:00
Huy Nguyen
22b105bfdc
ASCollectionView doesn't animate size changes if some of the updated cell nodes don't want to
2016-03-15 16:17:43 -07:00
Michael Schneider
13aa891ecf
Improve way to go into full mode on scroll
2016-03-12 17:45:09 -08:00
Michael Schneider
e4ddb7e270
Go into full range mode if a scroll happens
2016-03-12 15:44:27 -08:00
Gordon Chen
508ac44238
make sure ASCV's layoutFacilitator triggers layout recalculation when its subnode has size change
2016-03-11 16:49:33 -08:00
Scott Goodson
ff8ffffb7b
[ASCellNode] Upgrades to ASCellNodeVisibilityEvent to ensure it is always synchronized with visibilityDidChange:
2016-03-10 20:21:00 -08:00
Scott Goodson
0e460ca00a
[ASRangeController] Don't bother asking UIKit for the visible index paths if view is zero-sized, as it triggers a reloadData.
2016-03-10 19:10:25 -08:00
Scott Goodson
21bebb9d29
[ASRangeController] Improvements to application state change and memory warning handling.
...
Introduces ASLayoutRangeModeVisibleOnly, allowing the preservation of decoded backing stores without any extra padding to
strictly minimize memory usage while supporting immediate re-display of content. Set visible range controllers to this mode
upon app suspend / memory warning, while more aggressively clearing others to the ASLayoutRangeModeLowMemory mode.
By default, when the app is running and recieves a memory warning, we set the range mode for non-visible controllers to
ASLayoutRangeModeVisibleOnly. This is because, unlike in the app suspend case where on app resume we can restore controllers
from LowMemory to VisibleOnly, the memory warning doesn't provide a good opportunity to do this.
A new +Beta API to control this behavior is called +setRangeModeForMemoryWarnings:, as some apps may prefer to use LowMemory
in the memory warning scenario. For these apps, optimal user experience will require manually setting the range mode back
to some larger value as the user navigates the app, or they will encounter controllers that are temporarily blank and need
a moment to re-display their contents as they start to become visible.
2016-03-09 21:22:45 -08:00
Ethan Nagel
352247184a
Ensure that we use the correct default size for collection nodes even if layoutSubviews has not been called yet. This is a more conservative approach than the previous one.
2016-03-09 09:56:32 -08:00
Ethan Nagel
5a3dab5610
Ensure that er use the correct default size for collection nodes even if layoutSubviews has not been called yet
2016-03-08 17:03:55 -08:00
Scott Goodson
9c0d0542dd
[ASScrollDirection] Fix scroll direction interpretation after recent changes to this logic.
2016-03-07 22:50:48 -08:00
appleguy
354ccf3e5f
Merge pull request #1327 from samhsiung/fix_scrollable_directions
...
[ASCollectionView] scrollableDirections must account for alwaysBounce(Vertical | Horizontal)
2016-03-05 16:35:48 -08:00
Luke Zhao
03e84e20ac
updated with deprecated message
2016-03-05 13:04:20 -08:00
Samuel Hsiung
85394f09b4
Account for alwaysBounce(Vertical|Horizontal) when calculating scrollable directions
2016-03-04 21:33:08 -08:00
appleguy
0a76c7b5d2
Merge pull request #1301 from lkzhao/collectionView-sectionInset-fix
...
Remove cell constrainedSize adjustment with section insets in constrainedSizeForNode
2016-03-04 14:26:55 -08:00
Luke Zhao
aa180c6f3b
completely remove cell constrainedSize adjustment from section inset
2016-03-04 13:14:16 -08:00
Michael Schneider
aa2ae87c81
Add -waitUntilAllUpdatesAreCommitted to ASTableView and ASCollectionView
...
The API allows consumer of ASTableView or ASCollectionCiew to block execution of the main thread until all section and row updates are committed.
2016-03-02 19:38:14 -08:00
appleguy
e82d1408d2
Merge pull request #1292 from nguyenhuy/visibility_improvements
...
[ASCellNode] Update visibility API to support new event types for initial visibility & invisibility (caused by VC transitions, etc)
2016-03-02 19:30:31 -08:00
Luke Zhao
818c5bab9c
only adjust constraint size if the datasource doesn't implement ConstrainedSizeForNode
2016-03-01 13:16:10 -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
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
Levi McCallum
c2d379f8f5
Add a bit of documentation to describe the problem this is solving
2016-02-23 13:02:37 -08:00
Levi McCallum
4640801939
Enable animated bounds changes in ASCollectionView
2016-02-23 09:36:11 -08:00
appleguy
b75d6627bb
Revert "Revert "Revert "[ASCollectionView / ASTableView] Optimize reloadData and reloadSection: methods."""
2016-02-19 23:26:29 -08:00
Max Gu
67c8cd5ccf
Removing underscore
2016-02-19 22:21:07 -08:00
Max Gu
548b600504
Removing 2 unnecessary checks
2016-02-19 22:18:08 -08:00
Max Gu
115fc2b3da
Adding visibility monitoring for ASTableVieww
2016-02-19 22:15:44 -08:00
Max Gu
382509fac8
Letting ASCellNode and its subclasses handle didScroll
2016-02-19 21:30:36 -08:00
Max Gu
53cbd643de
Removing ASCellNode+Internal
2016-02-19 14:56:02 -08:00
Max Gu
a834382bcb
Update for visibility monitoring
2016-02-19 14:27:22 -08:00
Max Gu
fa4fc2b6ae
Merge remote-tracking branch 'upstream/master'
2016-02-19 12:59:00 -08:00
Max Gu
650b500f92
Merge branch 'master' of https://github.com/Xinchi/AsyncDisplayKit
2016-02-19 12:52:03 -08:00
Max Gu
03446d97e1
Adding scroll visibility
2016-02-19 12:46:12 -08:00
appleguy
58a3ba5e8f
Revert "Revert "[ASCollectionView / ASTableView] Optimize reloadData and reloadSection: methods.""
2016-02-18 23:06:14 -08:00
appleguy
32aa333c21
Revert "[ASCollectionView / ASTableView] Optimize reloadData and reloadSection: methods."
2016-02-18 19:50:06 -08:00
Max Gu
75eab1db07
Adding scroll visibility
2016-02-18 18:00:37 -08:00
appleguy
33d4c8693d
Merge pull request #1171 from lkzhao/ASDataController-reload
...
[ASCollectionView / ASTableView] Optimize reloadData and reloadSection: methods.
2016-02-18 17:36:14 -08:00
Luke Zhao
40791dd859
optimize reload data, reload sections, & move nodes performance & logic
2016-02-18 14:44:16 -08:00
Adlai Holler
76708c47cf
[ASCollectionView] Always honor sectionInset in both dimensions
2016-02-18 09:54:48 -08:00
appleguy
c526fcdff4
Merge pull request #1239 from rahul-malik/rmalik-concurrent-alloc
...
[ASDataController] Concurrent allocation of ASCellNodes
2016-02-17 22:53:35 -08:00
Rahul Malik
19cc368d15
In addition to allocating nodes in the background, perform that operation concurrently in ASDataController
2016-02-17 22:30:58 -08:00
Scott Goodson
4a37b0882e
[ASCollectionView] iOS 7-only issue where willDisplayCell: is not called, fixed for only that OS version.
...
This includes some method moves to make sure related methods are in closer proximitiy.
2016-02-17 22:21:46 -08:00
Scott Goodson
e1597f902a
Increase default value for leadingScreensForBatching to 2.0, as 1.0 is not enough
...
for most network conditions / backend performance.
2016-02-16 22:19:27 -08:00