{"action":"created","issue":{"url":"https://api.github.com/repos/awesomeWM/awesome/issues/153","labels_url":"https://api.github.com/repos/awesomeWM/awesome/issues/153/labels{/name}","comments_url":"https://api.github.com/repos/awesomeWM/awesome/issues/153/comments","events_url":"https://api.github.com/repos/awesomeWM/awesome/issues/153/events","html_url":"https://github.com/awesomeWM/awesome/pull/153","id":58806275,"number":153,"title":"TBD: Revert \"layout.arrange only once per main loop\"","user":{"login":"blueyed","id":9766,"avatar_url":"https://avatars.githubusercontent.com/u/9766?v=3","gravatar_id":"","url":"https://api.github.com/users/blueyed","html_url":"https://github.com/blueyed","followers_url":"https://api.github.com/users/blueyed/followers","following_url":"https://api.github.com/users/blueyed/following{/other_user}","gists_url":"https://api.github.com/users/blueyed/gists{/gist_id}","starred_url":"https://api.github.com/users/blueyed/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/blueyed/subscriptions","organizations_url":"https://api.github.com/users/blueyed/orgs","repos_url":"https://api.github.com/users/blueyed/repos","events_url":"https://api.github.com/users/blueyed/events{/privacy}","received_events_url":"https://api.github.com/users/blueyed/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-02-24T21:12:12Z","updated_at":"2015-02-25T20:38:31Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/awesomeWM/awesome/pulls/153","html_url":"https://github.com/awesomeWM/awesome/pull/153","diff_url":"https://github.com/awesomeWM/awesome/pull/153.diff","patch_url":"https://github.com/awesomeWM/awesome/pull/153.patch"},"body":"This reverts 7410646, 1777605 and c88c51f.\r\n\r\nThe problem is that the change was meant to improve performance, but\r\ntriggers problems where a plugin / config relies on geometries being\r\nupdated/changed during the same main loop.\r\n\r\nThe code might be improved to e.g. not delay arranging sometimes, but\r\nthen it's easier to restore the old behavior for now.\r\n\r\nWe might re-add this, but then should provide a way to easily call\r\nsomething on the next arrange signal, e.g.\r\n\r\n    > screen:on_next(\"arrange\", function() ... end)"},"comment":{"url":"https://api.github.com/repos/awesomeWM/awesome/issues/comments/76051092","html_url":"https://github.com/awesomeWM/awesome/pull/153#issuecomment-76051092","issue_url":"https://api.github.com/repos/awesomeWM/awesome/issues/153","id":76051092,"user":{"login":"psychon","id":89482,"avatar_url":"https://avatars.githubusercontent.com/u/89482?v=3","gravatar_id":"","url":"https://api.github.com/users/psychon","html_url":"https://github.com/psychon","followers_url":"https://api.github.com/users/psychon/followers","following_url":"https://api.github.com/users/psychon/following{/other_user}","gists_url":"https://api.github.com/users/psychon/gists{/gist_id}","starred_url":"https://api.github.com/users/psychon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/psychon/subscriptions","organizations_url":"https://api.github.com/users/psychon/orgs","repos_url":"https://api.github.com/users/psychon/repos","events_url":"https://api.github.com/users/psychon/events{/privacy}","received_events_url":"https://api.github.com/users/psychon/received_events","type":"User","site_admin":false},"created_at":"2015-02-25T20:38:31Z","updated_at":"2015-02-25T20:38:31Z","body":"> The problem is that the change was meant to improve performance, but\r\n\r\nDoes anyone have some details on why this needs to be improved? Benchmarks or something? Otherwise, isn't this \"delay arranges\" just premature optimization?\r\n\r\nIf we knew what *exactly* is slow, other things could be done. For example, the C code could delay actually committing the geometry changes to the end of the main loop iteration (similar to how banning and stacking updates are delayed)."}}