{"action":"created","issue":{"url":"https://api.github.com/repos/servo/servo/issues/7423","labels_url":"https://api.github.com/repos/servo/servo/issues/7423/labels{/name}","comments_url":"https://api.github.com/repos/servo/servo/issues/7423/comments","events_url":"https://api.github.com/repos/servo/servo/issues/7423/events","html_url":"https://github.com/servo/servo/pull/7423","id":103630376,"number":7423,"title":"layout: Make the compositor rather than layout determine the position of each iframe.","user":{"login":"pcwalton","id":157897,"avatar_url":"https://avatars.githubusercontent.com/u/157897?v=3","gravatar_id":"","url":"https://api.github.com/users/pcwalton","html_url":"https://github.com/pcwalton","followers_url":"https://api.github.com/users/pcwalton/followers","following_url":"https://api.github.com/users/pcwalton/following{/other_user}","gists_url":"https://api.github.com/users/pcwalton/gists{/gist_id}","starred_url":"https://api.github.com/users/pcwalton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pcwalton/subscriptions","organizations_url":"https://api.github.com/users/pcwalton/orgs","repos_url":"https://api.github.com/users/pcwalton/repos","events_url":"https://api.github.com/users/pcwalton/events{/privacy}","received_events_url":"https://api.github.com/users/pcwalton/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/servo/servo/labels/A-constellation","name":"A-constellation","color":"d7e102"},{"url":"https://api.github.com/repos/servo/servo/labels/A-gfx/compositing","name":"A-gfx/compositing","color":"d7e102"},{"url":"https://api.github.com/repos/servo/servo/labels/A-gfx/rendering","name":"A-gfx/rendering","color":"d7e102"},{"url":"https://api.github.com/repos/servo/servo/labels/I-wrong","name":"I-wrong","color":"e10c02"},{"url":"https://api.github.com/repos/servo/servo/labels/S-awaiting-review","name":"S-awaiting-review","color":"d4c5f9"}],"state":"open","locked":false,"assignee":{"login":"glennw","id":2350882,"avatar_url":"https://avatars.githubusercontent.com/u/2350882?v=3","gravatar_id":"","url":"https://api.github.com/users/glennw","html_url":"https://github.com/glennw","followers_url":"https://api.github.com/users/glennw/followers","following_url":"https://api.github.com/users/glennw/following{/other_user}","gists_url":"https://api.github.com/users/glennw/gists{/gist_id}","starred_url":"https://api.github.com/users/glennw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/glennw/subscriptions","organizations_url":"https://api.github.com/users/glennw/orgs","repos_url":"https://api.github.com/users/glennw/repos","events_url":"https://api.github.com/users/glennw/events{/privacy}","received_events_url":"https://api.github.com/users/glennw/received_events","type":"User","site_admin":false},"milestone":null,"comments":14,"created_at":"2015-08-28T02:04:04Z","updated_at":"2015-08-31T23:10:04Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/servo/servo/pulls/7423","html_url":"https://github.com/servo/servo/pull/7423","diff_url":"https://github.com/servo/servo/pull/7423.diff","patch_url":"https://github.com/servo/servo/pull/7423.patch"},"body":"The old code that attempted to do this during layout wasn't able to work\r\nfor multiple reasons: it couldn't know where the iframe was going to be\r\non the page (because of nested iframes), and at the time it was building\r\nthe display list for a fragment it couldn't know where that fragment was\r\ngoing to be in page coordinates.\r\n\r\nThis patch rewrites that code so that only the size of an iframe is\r\ndetermined during layout, and the position is determined by the\r\ncompositor. Layout layerizes iframes and marks the iframe layers with\r\nthe appropriate subpage ID so that the compositor can place them\r\ncorrectly.\r\n\r\nCloses #7377.\n\n<!-- Reviewable:start -->\n[<img src=\"https://reviewable.io/review_button.png\" height=40 alt=\"Review on Reviewable\"/>](https://reviewable.io/reviews/servo/servo/7423)\n<!-- Reviewable:end -->\n"},"comment":{"url":"https://api.github.com/repos/servo/servo/issues/comments/136524411","html_url":"https://github.com/servo/servo/pull/7423#issuecomment-136524411","issue_url":"https://api.github.com/repos/servo/servo/issues/7423","id":136524411,"user":{"login":"pcwalton","id":157897,"avatar_url":"https://avatars.githubusercontent.com/u/157897?v=3","gravatar_id":"","url":"https://api.github.com/users/pcwalton","html_url":"https://github.com/pcwalton","followers_url":"https://api.github.com/users/pcwalton/followers","following_url":"https://api.github.com/users/pcwalton/following{/other_user}","gists_url":"https://api.github.com/users/pcwalton/gists{/gist_id}","starred_url":"https://api.github.com/users/pcwalton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pcwalton/subscriptions","organizations_url":"https://api.github.com/users/pcwalton/orgs","repos_url":"https://api.github.com/users/pcwalton/repos","events_url":"https://api.github.com/users/pcwalton/events{/privacy}","received_events_url":"https://api.github.com/users/pcwalton/received_events","type":"User","site_admin":false},"created_at":"2015-08-31T23:10:04Z","updated_at":"2015-08-31T23:10:04Z","body":"@bors-servo: r=glennw"}}