{"action":"created","issue":{"url":"https://api.github.com/repos/facebook/react-native/issues/10554","repository_url":"https://api.github.com/repos/facebook/react-native","labels_url":"https://api.github.com/repos/facebook/react-native/issues/10554/labels{/name}","comments_url":"https://api.github.com/repos/facebook/react-native/issues/10554/comments","events_url":"https://api.github.com/repos/facebook/react-native/issues/10554/events","html_url":"https://github.com/facebook/react-native/pull/10554","id":185321280,"number":10554,"title":"[KeyboardAvoidingView] Don't configure the next layout animation if the height hasn't changed","user":{"login":"negativetwelve","id":1435378,"avatar_url":"https://avatars.githubusercontent.com/u/1435378?v=3","gravatar_id":"","url":"https://api.github.com/users/negativetwelve","html_url":"https://github.com/negativetwelve","followers_url":"https://api.github.com/users/negativetwelve/followers","following_url":"https://api.github.com/users/negativetwelve/following{/other_user}","gists_url":"https://api.github.com/users/negativetwelve/gists{/gist_id}","starred_url":"https://api.github.com/users/negativetwelve/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/negativetwelve/subscriptions","organizations_url":"https://api.github.com/users/negativetwelve/orgs","repos_url":"https://api.github.com/users/negativetwelve/repos","events_url":"https://api.github.com/users/negativetwelve/events{/privacy}","received_events_url":"https://api.github.com/users/negativetwelve/received_events","type":"User","site_admin":false},"labels":[{"id":196858975,"url":"https://api.github.com/repos/facebook/react-native/labels/CLA%20Signed","name":"CLA Signed","color":"e7e7e7","default":false},{"id":172176599,"url":"https://api.github.com/repos/facebook/react-native/labels/GH%20Review:%20review-needed","name":"GH Review: review-needed","color":"fbca04","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":7,"created_at":"2016-10-26T07:54:28Z","updated_at":"2016-12-10T19:36:52Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/facebook/react-native/pulls/10554","html_url":"https://github.com/facebook/react-native/pull/10554","diff_url":"https://github.com/facebook/react-native/pull/10554.diff","patch_url":"https://github.com/facebook/react-native/pull/10554.patch"},"body":"### Problem\n\nScenario: a view wrapped with a KeyboardAvoidingView that contains multiple TextInput components as children.\n\nRight now, when you tap between the TextInputs, you queue up a bunch of LayoutAnimations that aren't executed because the state on the KeyboardAvoidingView does not update and thus does not change it's layout.\n\nThis means that any other action (such as navigating back on the Navigator) would receive this queued LayoutAnimation sometimes causing views to move in unexpected ways.\n### Test plan (required)\n\nUnfortunately, I can't send a video of the app we're building, but if necessary, I can put together a small example to show the issue.\n\nMake sure tests pass on both Travis and Circle CI.\n### Code formatting\n\nI made a few small style changes to be consistent with the rest of the codebase:\n1. remove spaces around destructuring\n2. variables with the same name as the key inside objects\n"},"comment":{"url":"https://api.github.com/repos/facebook/react-native/issues/comments/266232332","html_url":"https://github.com/facebook/react-native/pull/10554#issuecomment-266232332","issue_url":"https://api.github.com/repos/facebook/react-native/issues/10554","id":266232332,"user":{"login":"jgkim","id":86622,"avatar_url":"https://avatars.githubusercontent.com/u/86622?v=3","gravatar_id":"","url":"https://api.github.com/users/jgkim","html_url":"https://github.com/jgkim","followers_url":"https://api.github.com/users/jgkim/followers","following_url":"https://api.github.com/users/jgkim/following{/other_user}","gists_url":"https://api.github.com/users/jgkim/gists{/gist_id}","starred_url":"https://api.github.com/users/jgkim/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jgkim/subscriptions","organizations_url":"https://api.github.com/users/jgkim/orgs","repos_url":"https://api.github.com/users/jgkim/repos","events_url":"https://api.github.com/users/jgkim/events{/privacy}","received_events_url":"https://api.github.com/users/jgkim/received_events","type":"User","site_admin":false},"created_at":"2016-12-10T19:36:52Z","updated_at":"2016-12-10T19:36:52Z","body":"Also, we don't need to configure the next `LayoutAnimation` if `behavior` prop is not defined."}}
{"actor":{"display_login":"jgkim"}}