{"action":"created","issue":{"url":"https://api.github.com/repos/facebook/react-native/issues/4588","labels_url":"https://api.github.com/repos/facebook/react-native/issues/4588/labels{/name}","comments_url":"https://api.github.com/repos/facebook/react-native/issues/4588/comments","events_url":"https://api.github.com/repos/facebook/react-native/issues/4588/events","html_url":"https://github.com/facebook/react-native/pull/4588","id":120595489,"number":4588,"title":"[TextInput] Fixed controlled component on iOS and remove unnecessary code","user":{"login":"brentvatne","id":90494,"avatar_url":"https://avatars.githubusercontent.com/u/90494?v=3","gravatar_id":"","url":"https://api.github.com/users/brentvatne","html_url":"https://github.com/brentvatne","followers_url":"https://api.github.com/users/brentvatne/followers","following_url":"https://api.github.com/users/brentvatne/following{/other_user}","gists_url":"https://api.github.com/users/brentvatne/gists{/gist_id}","starred_url":"https://api.github.com/users/brentvatne/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brentvatne/subscriptions","organizations_url":"https://api.github.com/users/brentvatne/orgs","repos_url":"https://api.github.com/users/brentvatne/repos","events_url":"https://api.github.com/users/brentvatne/events{/privacy}","received_events_url":"https://api.github.com/users/brentvatne/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/facebook/react-native/labels/CLA%20Signed","name":"CLA Signed","color":"e7e7e7"},{"url":"https://api.github.com/repos/facebook/react-native/labels/GH%20Review:%20review-needed","name":"GH Review: review-needed","color":"fbca04"}],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":11,"created_at":"2015-12-05T23:29:46Z","updated_at":"2015-12-14T22:36:37Z","closed_at":"2015-12-14T14:46:46Z","pull_request":{"url":"https://api.github.com/repos/facebook/react-native/pulls/4588","html_url":"https://github.com/facebook/react-native/pull/4588","diff_url":"https://github.com/facebook/react-native/pull/4588.diff","patch_url":"https://github.com/facebook/react-native/pull/4588.patch"},"body":"Closes #4290\r\n\r\n`mostRecentEventCount` was always being set after `text` on iOS, so let's be really explicit about the order here as we were doing on Android: always call `setNativeProps` providing the `mostRecentEventCount` before we call `onChange` or `onChangeText`.\r\n\r\nI also ripped out storing `mostRecentEventCount` in the state, which isn't necessary since we're always doing it through `setNativeProps`.\r\n\r\nTest plan: Open UIExplorer on iOS and Android, go to the TextInput section and in the TextInput under the Live-Rewrite title write \"hello react native\" and you should see \"hello_react_native\""},"comment":{"url":"https://api.github.com/repos/facebook/react-native/issues/comments/164582023","html_url":"https://github.com/facebook/react-native/pull/4588#issuecomment-164582023","issue_url":"https://api.github.com/repos/facebook/react-native/issues/4588","id":164582023,"user":{"login":"nicklockwood","id":546885,"avatar_url":"https://avatars.githubusercontent.com/u/546885?v=3","gravatar_id":"","url":"https://api.github.com/users/nicklockwood","html_url":"https://github.com/nicklockwood","followers_url":"https://api.github.com/users/nicklockwood/followers","following_url":"https://api.github.com/users/nicklockwood/following{/other_user}","gists_url":"https://api.github.com/users/nicklockwood/gists{/gist_id}","starred_url":"https://api.github.com/users/nicklockwood/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nicklockwood/subscriptions","organizations_url":"https://api.github.com/users/nicklockwood/orgs","repos_url":"https://api.github.com/users/nicklockwood/repos","events_url":"https://api.github.com/users/nicklockwood/events{/privacy}","received_events_url":"https://api.github.com/users/nicklockwood/received_events","type":"User","site_admin":false},"created_at":"2015-12-14T22:36:37Z","updated_at":"2015-12-14T22:36:37Z","body":"@mpretty-homepass that should only happen if the JS thread is running behind though, which it shouldn't unless there are performance problems in the JS code."}}