This repository has been archived by the owner on Feb 2, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2.2k
[ASDisplayNode] Certain animations cause relayout before layout transitions can complete #1883
Closed
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…hive#1753) [ASMapNode] Change map snapshot when updating it with a new region (facebookarchive#1754) [ASMapNode] Commented out code that is causing inaccurate behavior [ASMapNode] Added the ability to zoom in and show annotations, similar to showAnnotations:animated: of MKMapView. Added a basic example for ASMapNode to try out the different changes
ghost
added
the
CLA Signed
label
Jul 11, 2016
Remove UIKit call from -init!
…emely hot codepath. This was observed with quantitative profiling results. We have some opportunities to micro-optimize the layout objects.
…ltiplex_image_path [Examples] fix image paths in example_extra/Multiplex
…etChildren [ASLayoutSpec] Final layoutable set children
…e#1899) This assertion is failing in some apps and will be enabled soon.
…ly on property lock (facebookarchive#1900) For performance reasons change to directly lock and unlock calls on the property lock instance
…rFromSubnodeNotHappening [ASDisplayNode] Fix setNeedsLayout triggered from subnode will not trigger relayout
…pdateTitle [ASButtonNode] Correctly compare and update its title
ghost
added
the
CLA Signed
label
Jul 12, 2016
…ASViewController [ASViewController] Fix sizing of root node in ASViewController for modal presentation and root view controller
…ache Share ASDK's PINRemoteImage cache with default instance of PINRemoteI…
…are changing Throw away the all subcomponents to create them with the new constrained size new as well as let the truncater do it's job again for the new constrained size. This is necessary as after a truncation did happen the context would use the truncated string and not the original string to truncate based on the new constrained size
…rchive#1907) * Always layout nodes on a background thread * Remove semaphore in ASDataController for allocating nodes and layout * Fix variable not used error * Remove overhead to create subarray of contexts of nodes while layout nodes * Remove extra allocation of allocatedNodes and indexPaths array
…ive#1725) * Add automatic measurement before layout * Remove code not needed or addressed in a different PR * Adjust comments and rename __layoutSublayouts to __layoutSubnodes * Check before setting up a placeholder layer if the node should have a placeholder
I have a subclass of `ASTextNode` that uses `pointSizeScaleFactors`. Currently I have to recompute the scale factors any time the font size changes. If `_rendererAttributes` used the property accesor for the scale factors I would only have to create them when asked. I hope this little change can make it in :)
…uncationAgain [ASTextNode] Fix wrong truncation after constrained size changes
…vocations [Performance] Various Easy Performance Wins
…tingIssues [ASRangeController] Fix Major Range Mode Updating Issues
…Percentage [ASLayout] Add convenience functions to create relative sizes with percentage
…inline if it's on the main thread
…sking dirty layout status
…ement [Followup] Small code improvements
[ASTextNode] use accessor for `pointSizeScaleFactors`
aimalygin
pushed a commit
to aimalygin/AsyncDisplayKit
that referenced
this pull request
Sep 16, 2020
aimalygin
pushed a commit
to aimalygin/AsyncDisplayKit
that referenced
this pull request
Sep 16, 2020
* master_up: (43 commits) Do not expose tgmath.h to all clients of Texture (facebookarchive#1900) Call will / did display node for ASTextNode. Fixes facebookarchive#1680 (facebookarchive#1893) Remove background deallocation helper code (facebookarchive#1890) [Accessibility] Ship ASExperimentalDoNotCacheAccessibilityElements (facebookarchive#1888) 🎉 3.0.0 (facebookarchive#1883) Upgrade to Xcode 11.5 (facebookarchive#1877) Renames AS_EXTERN and ASViewController (facebookarchive#1876) Improve ThreeMigrationGuide.md (facebookarchive#1878) Add a 3.0 migration guide (facebookarchive#1875) I forgot this in the last PR and I'm pushing to master, I'm a bad person. Update for 3.0.0-rc.2 (facebookarchive#1874) Update RELEASE.md (facebookarchive#1873) Fix all the warnings and re-enable on CI (facebookarchive#1872) Prepare for 3.0.0-rc.1 release (facebookarchive#1870) -[ASNetworkImageNode setURL:resetToDefault:] forget to reset animatedImage (facebookarchive#1861) [ASDisplayNode] Implement accessibilityElementsHidden (facebookarchive#1859) Fix documentation for ASCornerRoundingTypeClipping (facebookarchive#1863) Add iOS13 UIContextMenu api to ASCommonCollectionDelegate (facebookarchive#1860) [ASDisplayNode] Implement accessibilityViewIsModal (facebookarchive#1858) Update FBSnapshotTestCase to iOSSnapshotTestCase (=6.2) (facebookarchive#1855) ...
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is a clone of my last PR which was closed because I screwed up a push in my fork.
Original [https://github.com//pull/1394]
To whomever reviews this, please let me know if I'm missing something here. I've been using the framework for a bit now, but there is a ton to learn here, thanks in advance.
There are certain animations that can cause a layoutSubviews or in this case layoutSubnodes to occur up the animating nodes parent chain. The 2 cases I've observed are frame and bounds.
This is causing the the node that is transitioning to snap to the finalLayout before all animations are complete and before completeTransition(didComplete: Bool) is called.
The proposed fix is to gate relayout by whether or not there is a transition occurring. I've added a check for _transitionContext != nil (which is set to nil on the transitionDidComplete callback) in the layout method on ASDisplayNode.