{"action":"created","issue":{"url":"https://api.github.com/repos/atom/atom/issues/8009","labels_url":"https://api.github.com/repos/atom/atom/issues/8009/labels{/name}","comments_url":"https://api.github.com/repos/atom/atom/issues/8009/comments","events_url":"https://api.github.com/repos/atom/atom/issues/8009/events","html_url":"https://github.com/atom/atom/pull/8009","id":96391681,"number":8009,"title":"Change Document Polling from Time Interval to Event ","user":{"login":"jlord","id":1305617,"avatar_url":"https://avatars.githubusercontent.com/u/1305617?v=3","gravatar_id":"","url":"https://api.github.com/users/jlord","html_url":"https://github.com/jlord","followers_url":"https://api.github.com/users/jlord/followers","following_url":"https://api.github.com/users/jlord/following{/other_user}","gists_url":"https://api.github.com/users/jlord/gists{/gist_id}","starred_url":"https://api.github.com/users/jlord/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jlord/subscriptions","organizations_url":"https://api.github.com/users/jlord/orgs","repos_url":"https://api.github.com/users/jlord/repos","events_url":"https://api.github.com/users/jlord/events{/privacy}","received_events_url":"https://api.github.com/users/jlord/received_events","type":"User","site_admin":true},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2015-07-21T18:57:54Z","updated_at":"2015-07-24T00:38:48Z","closed_at":"2015-07-23T19:06:02Z","pull_request":{"url":"https://api.github.com/repos/atom/atom/pulls/8009","html_url":"https://github.com/atom/atom/pull/8009","diff_url":"https://github.com/atom/atom/pull/8009.diff","patch_url":"https://github.com/atom/atom/pull/8009.patch"},"body":":pear: ing with @nathansobo \r\n\r\nPreviously document polling happened through timed intervals causing continued use of CPU when the editor was unfocused. \r\n\r\nThis PR changes the polling to occur when the DOM is mutated or the window is resized (since that doesn't fall under a DOM mutation). Additionally it changes the way Atom updates the CSS so that it occurs as a mutation and the event is captured. Furthermore! It prevents the cursor from ever starting to blink if it wasn't blinking already which can be caused, for instance, when content is changed in the Settings View.\r\n\r\nWe've added test coverage but are still testing this branch out to be sure we've:\r\n\r\n- covered all the DOM changing scenarios\r\n- not added additional CPU usage when editor _is_ active\r\n\r\ncc @atom/feedback, try out this branch too if ya can :+1: \r\n\r\nFixes https://github.com/atom/atom/issues/4019\r\nQuality Initiative https://github.com/atom/atom/issues/7995"},"comment":{"url":"https://api.github.com/repos/atom/atom/issues/comments/124279521","html_url":"https://github.com/atom/atom/pull/8009#issuecomment-124279521","issue_url":"https://api.github.com/repos/atom/atom/issues/8009","id":124279521,"user":{"login":"jlord","id":1305617,"avatar_url":"https://avatars.githubusercontent.com/u/1305617?v=3","gravatar_id":"","url":"https://api.github.com/users/jlord","html_url":"https://github.com/jlord","followers_url":"https://api.github.com/users/jlord/followers","following_url":"https://api.github.com/users/jlord/following{/other_user}","gists_url":"https://api.github.com/users/jlord/gists{/gist_id}","starred_url":"https://api.github.com/users/jlord/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jlord/subscriptions","organizations_url":"https://api.github.com/users/jlord/orgs","repos_url":"https://api.github.com/users/jlord/repos","events_url":"https://api.github.com/users/jlord/events{/privacy}","received_events_url":"https://api.github.com/users/jlord/received_events","type":"User","site_admin":true},"created_at":"2015-07-24T00:38:48Z","updated_at":"2015-07-24T00:38:48Z","body":"wowoowo! Awesome! Thank you @nathansobo!"}}