{"action":"created","issue":{"url":"https://api.github.com/repos/orgsync/react-list/issues/11","labels_url":"https://api.github.com/repos/orgsync/react-list/issues/11/labels{/name}","comments_url":"https://api.github.com/repos/orgsync/react-list/issues/11/comments","events_url":"https://api.github.com/repos/orgsync/react-list/issues/11/events","html_url":"https://github.com/orgsync/react-list/issues/11","id":72009002,"number":11,"title":"Support scroll debounce","user":{"login":"cmwelsh","id":86490,"avatar_url":"https://avatars.githubusercontent.com/u/86490?v=3","gravatar_id":"","url":"https://api.github.com/users/cmwelsh","html_url":"https://github.com/cmwelsh","followers_url":"https://api.github.com/users/cmwelsh/followers","following_url":"https://api.github.com/users/cmwelsh/following{/other_user}","gists_url":"https://api.github.com/users/cmwelsh/gists{/gist_id}","starred_url":"https://api.github.com/users/cmwelsh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cmwelsh/subscriptions","organizations_url":"https://api.github.com/users/cmwelsh/orgs","repos_url":"https://api.github.com/users/cmwelsh/repos","events_url":"https://api.github.com/users/cmwelsh/events{/privacy}","received_events_url":"https://api.github.com/users/cmwelsh/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2015-04-29T22:38:13Z","updated_at":"2015-04-29T23:11:37Z","closed_at":"2015-04-29T23:03:14Z","body":"When scrolling, the scroll event is fired too many times per second and blocks the UI thread.\r\n\r\nI noticed this in Chrome by rendering a UniformList inside a Bootstrap modal dialog. For some reason, scrolling worked normally when scrolling the `window` object, but when scrolling an `overflow` element, the scroll was choppy, and momentum scrolling was acting choppy.\r\n\r\nI fixed this by modifying the following line as so:\r\n\r\n        this.scrollParent.addEventListener('scroll', require('lodash').debounce(this.updateFrame, 100));\r\n"},"comment":{"url":"https://api.github.com/repos/orgsync/react-list/issues/comments/97611445","html_url":"https://github.com/orgsync/react-list/issues/11#issuecomment-97611445","issue_url":"https://api.github.com/repos/orgsync/react-list/issues/11","id":97611445,"user":{"login":"caseywebdev","id":1181237,"avatar_url":"https://avatars.githubusercontent.com/u/1181237?v=3","gravatar_id":"","url":"https://api.github.com/users/caseywebdev","html_url":"https://github.com/caseywebdev","followers_url":"https://api.github.com/users/caseywebdev/followers","following_url":"https://api.github.com/users/caseywebdev/following{/other_user}","gists_url":"https://api.github.com/users/caseywebdev/gists{/gist_id}","starred_url":"https://api.github.com/users/caseywebdev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/caseywebdev/subscriptions","organizations_url":"https://api.github.com/users/caseywebdev/orgs","repos_url":"https://api.github.com/users/caseywebdev/repos","events_url":"https://api.github.com/users/caseywebdev/events{/privacy}","received_events_url":"https://api.github.com/users/caseywebdev/received_events","type":"User","site_admin":false},"created_at":"2015-04-29T23:11:37Z","updated_at":"2015-04-29T23:11:37Z","body":"React has its own render batching strategy that should make throttling updates unnecessary. It's odd that the `window` performance was slower than the `overflow`. You can see on the demo page that the `overflow` example is 2.9 million px tall and in my tests it performs better than the window. If this is for iOS, are you using `-webkit-overflow-scrolling: touch`?"}}