{"action":"created","issue":{"url":"https://api.github.com/repos/facebook/AsyncDisplayKit/issues/1394","repository_url":"https://api.github.com/repos/facebook/AsyncDisplayKit","labels_url":"https://api.github.com/repos/facebook/AsyncDisplayKit/issues/1394/labels{/name}","comments_url":"https://api.github.com/repos/facebook/AsyncDisplayKit/issues/1394/comments","events_url":"https://api.github.com/repos/facebook/AsyncDisplayKit/issues/1394/events","html_url":"https://github.com/facebook/AsyncDisplayKit/pull/1394","id":141756483,"number":1394,"title":"[ASDisplayNode] Certain animations cause relayout before layout transitions can complete","user":{"login":"jellenbogen","id":1269011,"avatar_url":"https://avatars.githubusercontent.com/u/1269011?v=3","gravatar_id":"","url":"https://api.github.com/users/jellenbogen","html_url":"https://github.com/jellenbogen","followers_url":"https://api.github.com/users/jellenbogen/followers","following_url":"https://api.github.com/users/jellenbogen/following{/other_user}","gists_url":"https://api.github.com/users/jellenbogen/gists{/gist_id}","starred_url":"https://api.github.com/users/jellenbogen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jellenbogen/subscriptions","organizations_url":"https://api.github.com/users/jellenbogen/orgs","repos_url":"https://api.github.com/users/jellenbogen/repos","events_url":"https://api.github.com/users/jellenbogen/events{/privacy}","received_events_url":"https://api.github.com/users/jellenbogen/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2016-03-18T02:31:21Z","updated_at":"2016-03-18T02:33:46Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/facebook/AsyncDisplayKit/pulls/1394","html_url":"https://github.com/facebook/AsyncDisplayKit/pull/1394","diff_url":"https://github.com/facebook/AsyncDisplayKit/pull/1394.diff","patch_url":"https://github.com/facebook/AsyncDisplayKit/pull/1394.patch"},"body":"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. \r\n\r\nThere 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. \r\n\r\nThis 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. \r\n\r\nThe 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."},"comment":{"url":"https://api.github.com/repos/facebook/AsyncDisplayKit/issues/comments/198168746","html_url":"https://github.com/facebook/AsyncDisplayKit/pull/1394#issuecomment-198168746","issue_url":"https://api.github.com/repos/facebook/AsyncDisplayKit/issues/1394","id":198168746,"user":{"login":"facebook-github-bot","id":6422482,"avatar_url":"https://avatars.githubusercontent.com/u/6422482?v=3","gravatar_id":"","url":"https://api.github.com/users/facebook-github-bot","html_url":"https://github.com/facebook-github-bot","followers_url":"https://api.github.com/users/facebook-github-bot/followers","following_url":"https://api.github.com/users/facebook-github-bot/following{/other_user}","gists_url":"https://api.github.com/users/facebook-github-bot/gists{/gist_id}","starred_url":"https://api.github.com/users/facebook-github-bot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/facebook-github-bot/subscriptions","organizations_url":"https://api.github.com/users/facebook-github-bot/orgs","repos_url":"https://api.github.com/users/facebook-github-bot/repos","events_url":"https://api.github.com/users/facebook-github-bot/events{/privacy}","received_events_url":"https://api.github.com/users/facebook-github-bot/received_events","type":"User","site_admin":false},"created_at":"2016-03-18T02:33:45Z","updated_at":"2016-03-18T02:33:45Z","body":"Thank you for your pull request and welcome to our community. We require contributors to sign our Contributor License Agreement, and we don't seem to have you on file. In order for us to review and merge your code, please sign up at https://code.facebook.com/cla - and if you have received this in error or have any questions, please drop us a line at cla@fb.com. Thanks!"}}